0

与えられたモデル:

class User < ActiveRecord::Base
  attr_accessible :name, :email
  attr_accessible :active, as: :backend
end

次のように一括割り当てできるようになりました。

User.new name: 'Peter', email: 'pete@foo.bar'
User.new { name: 'Peter', email: 'pete@foo.bar', active: true }, as: :backend

アクションを明示的に指定しない限り、汎用コントローラ アクションにフォールバックするバックエンドに active_admin gem を使用しています。言い換えれば、「as::backend」オプションを追加するために一括割り当てが行われるたびに、明示的なアクションを記述する必要があります。よくない。

もちろん、解決策の 1 つは、すべて明示的に宣言されているフロントエンド アクションに "as: :frontend" を追加することです。

しかし、「as」オプションをグローバルに設定する方法があるかもしれません。たとえば、バックエンド ルート名前空間の before フィルターなどでしょうか?

4

1 に答える 1

0

了解しました。このプランを削除し、代わりにstrong_passwordsgemを使用してフロントエンドの一括割り当てをサニタイズします。このgemがRails4に統合される可能性は十分にあり、attr_accessibleの役割が面倒な代わりになります。

補足として:strong_passwords gemのREADMEは実際にはうまくいきませんでしたが、Ryan Batesは非常に役立つRailscastsエピソード(371-strong-parameters)を作成しました。

于 2012-10-02T13:51:14.067 に答える