2010-12-30 8 views
2

私は私のレールアプリケーションでdeviseを使用しています。ユーザと企業のような2種類のリソースタイプがあります。ビューでresource/resource_nameにアクセスする方法を工夫する

私は私がやりたいinspite

if user_logged_in? 
    current_user.name 
else 
    current_company.name 

を書いているので、ビュー内のいくつかのコードを再利用したいと思い、このように工夫が行われます。

resource.name 

が、このことは可能ですか?

+0

何あなたのコードを使用してアプリケーションのヘルパーを書いてはどうですか? – apneadiving

答えて

1

私はあなたが「夢の方法」の意味を正確にはわかりませんが、apnea.diving.deepのようなアプリケーションヘルパーを提案することができます。ただ、(別のファイルに入れしたい場合があります)app/helpers/application_helper.rbでこれを置く:あなたは今、あなたの意見でresource_nameを使用することができます

module ApplicationHelper 
    def resource_name 
    if user_logged_in? 
     current_user.name 
    else 
     current_company.name 
    end 
    end 
end 

(sが「終了」Sで終了する必要がある「場合」としても、ちょうどFYI、短いコードは、if user_logged_in?...は失敗します(あなたが書いたスニペット)