1

特定のユーザーまたはモバイル デバイス用に異なるサブ ドメインを持つ Rails 3 アプリケーションに取り組んでいます。

ビューの構造は次のようになります。

アプリ/

----ビュー/

- - - - モバイル/

--------管理者/

簡単な呼び出しで新しいビュー パスをパスセットに追加できます。

prepend_view_path(some_path)

また

append_view_path(some_path)

今、私もそれらを削除したいと思います。

以前に追加したパスをコントローラーの path_set から削除する方法はありますか? API で有用なメソッドが見つかりませんでしたdelete_at。たとえば、配列で使用する標準メソッドを使用すると、次の RuntimeError が発生します。

can't modify frozen array

たとえば、モバイルデバイスからのリクエストには、すでにさまざまな MIME タイプを使用しています。追加したパスを削除できなくても問題ありません。「デフォルト」のビューパスにリセットする方法を探しています。

4

2 に答える 2

1

Rails には他に 2 つの getter メソッドと setter メソッドがあります。それぞれview_paths()メソッドとview_paths=メソッドです。「view_paths=」メソッドを使用すると、動的に追加されたビュー パスを削除できると思います。

于 2012-04-27T09:03:33.520 に答える
0

一般ユーザーによる管理機能の使用を禁止したいようです。より良い方法は、 'cancan' のような 'authorization' プラグインを使用することです。

于 2012-04-28T15:41:49.430 に答える