2016-10-31 44 views
0

我有一個rails應用程序,其中CUD (create, update, delete)行動只能由管理員用來創建更新或刪除項目。每個人都可以使用節目(閱讀)動作。howto生成關聯的管理模型在軌道

現在我想只有管理員創建其他條目。這是我的項目模型

class Item < ActiveRecord::Base 
    has_many :entries 

這是我的入門機型

class Entry < ActiveRecord::Base 
    belongs_to :item 

在我admin_controller對我有必要行動的項目。

class Admin::ItemsController < ApplicationController 

現在我有兩個問題

  1. 我的問題是,我有沒有定義一個自己的管理員輸入控制器?我想是的,有一個自己的管理員項目控制器需要。

  2. 如何定義item_admin的最佳方式是允許 創建,更新或刪除條目。其他人都可以登錄 只看到。可以幫助我嗎?

回答

2

我覺得有兩種選擇:

  1. 構建一個允許所有CRUD操作的管理/項目和管理/輸入控制器 - 但僅管理員。另外還有一個公共物品和一個公共物品控制器,它們只實現show方法。
  2. 每種類型只有一個控制器(沒有專用的管理員控制器)。在此控制器內使用像punditcancancan這樣的寶石來確保只有管理員可以使用create,updatedestroy操作。
+0

Hello @spickermann,我會嘗試選項1.感謝您的幫助 – amarradi