0

に相当するものは何match 'aliased/route/here' => 'pointed/route/here'ですか?

同じモデルの別のログイン URL で Devise を動作させることができないため、ここで頭を悩ませています。誰かがこの問題に関するヒントを持っているなら、私はそれを感謝します!

私のルートの現在のバージョンは次のようになります。

auth.devise_for :somerole,    :class_name => 'MainRole', :as => 'niceurl'
auth.devise_for :anotherrole, :class_name => 'MainRole', :as => 'otherurl'

しかし、この:class_nameオプションですべてがうまくいくわけではありません。定義するすべてのロールに対して適切なヘルパーをすべて作成する必要があります。

私は現在、Rails 2.3.8 環境で Devise 1.x を使用しているため、Github で提供され、他の質問で言及されているソリューションが機能しないのはそのためです。

前もって感謝します!

アップデート

さて、私はDeviseが機能するための回避策を見つけました:私は、application_controller私のさまざまな役割をすべて収集し、それを次のようにメインロールに割り当てるメソッドを作成しました:

def current_mainrole
  current_somerole || current_anotherrole
end

セキュリティリークが発生する可能性があり、実際にはハッキングのように見えるのではないかと心配しているので、ルーティングの問題で誰かが助けてくれることを願っています.

4

1 に答える 1

0

2.3.8 の等価物は

map.contact '/contact', :controller => 'pages', :action => 'contact'

そのため、ニーズに合わせてラインを調整できます。

詳細については、次のリンクを参照してください。
Ruby on Rails チュートリアル 2.3
Ruby on Rails ガイド 2.3.8

私が助けてくれることを願っています。

于 2012-04-18T14:58:28.660 に答える