私はこれを数時間試みてきました。私はRubyとRailsにかなり慣れていません。
devise.html.erbファイルに私は持っています
<div class="container">
<%= render :partial => 'layouts/header' if user_signed_in? %>
</div>
上記は問題なく動作します。ユーザーがサインインしている場合は、私のページの上部にヘッダーが表示されます。サインインしていない場合は、ヘッダーは表示されません。
しかし、私は持っている必要があります(ユーザーは次のページにアドレスを入力する必要があるため):
<div class="container">
<%= render :partial => 'layouts/header' if current_user.registration_complete? %>
また、アプリを再起動すると、次のエラーメッセージが表示されます。
NoMethodError in Devise/registrations#new
私のプロジェクトの他の場所、user.rb(私のプロジェクトの他の部分は問題なく認識できます)でregistration_completeを次のように定義しています:
#Determines whether user completed his profile on registration or not
def registration_complete?
self.address.present?
end
このコードを他の場所に配置して、devise.html.erbで認識されるようにする必要がありますか?