2012-10-23 57 views
0

我正在構建一個應用程序,其中當用戶以管理員身份登錄時,它將擁有註冊用戶列表,並有四個鏈接顯示,編輯銷燬和settings.What我想要的是當管理單擊設置鏈接它會具有複選框的視圖,其中管理員決定用戶讀取,編輯,創建和銷燬應用程序中可用模型的權限。如何在索引視圖中實現複選框?

在此先感謝。

回答

0

如果我正確理解你,你正在尋找一個設置爲一個用戶設置的視圖。

既然您沒有給出您的模型的任何細節,我會假設該模型被稱爲User和權限只是在該模型上的布爾字段。

與此類似:

User 
- can_read 
- can_create 
- can_destroy 
- can_edit 

然後,我會實現這樣的觀點:

<%= form_for @user do |f| %> 
    <%= flabel :can_read %> 
    <%= f.check_box :can_read %> 

    <%= flabel :can_create %> 
    <%= f.check_box :can_create %> 

    .... 

    <%= f.submit %> 
<% end %> 

或更短:

<%= form_for @user do |f| %> 
    <% [:can_read, :can_create, :can_edit, :can_delete].each do |permission| %> 
    <%= flabel permission %> 
    <%= f.check_box permission %> 
    <% end %> 


    <%= f.submit %> 
<% end %> 

控制器代碼顯然是這樣的:

def edit 
@user = User.find(params[:id] 
end 

def update 
    @user = User.find(params[:id] 
    @user.update_attributes(params[:user]) 
end 
+0

對不起Tigraine沒有給出確切的細節....其實權限不是一個布爾變量我有一個權限不同的模型,它有列object_type,action_name和decsription都是字符串類型。如果你說我可以郵寄給你的應用程序只是讓我知道盡快.. –

+0

和一個更多的事情權限是動態生成的,因爲用戶執行一些操作,如讀取創建刪除它將自動更新權限模型... –

相關問題