フォーラムソフトウェアを作成しています。管理者と改造者が特定のトピックを閉じることができるようにしたいと思います。
コードは、関連情報のみを表示するようにサニタイズされます。
モデル
class User < ActiveRecord::Base
attr_accessible :name, :email, :password, :password_confirmation, :bio
has_many :topics, dependent: :destroy
end
class Topic < ActiveRecord::Base
belongs_to :user
attr_accessible :name, :last_post_id, :content
end
ユーザーのスキーマ:admin列とmod列は、adminとmodを決定します。
create_table "users", :force => true do |t|
t.string "name"
t.string "email"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "password_digest"
t.string "remember_token"
t.boolean "admin", :default => false
t.text "bio"
t.boolean "mod", :default => false
end
トピックのスキーマ:閉じた列は、トピックの閉じたステータスを決定します。
create_table "topics", :force => true do |t|
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.integer "forum_id"
t.string "name"
t.integer "last_post_id"
t.integer "views"
t.integer "user_id"
t.boolean "closed", :default => false
t.text "content"
end
悪意のあるPUT要求に対して脆弱であるため、私はトピックモデルのユーザーに消極的ですattr_accessible :closed
(私が間違っている場合は私を訂正してください)。
closed
Railsアプリがを使用せずにTOPICの列の値にアクセスして変更できるようにして、modattr_accessible
と管理者だけが編集できるようにする方法はありますか?