私はこの奇妙な問題に悩まされています。この問題は本番サーバーのみで発生し、ローカル サーバーでは問題なく動作します。
本番ログを確認したところ、エラーは次の行にあることがわかりました。
ActionView::Template::Error (nil:NilClass の未定義メソッド `full_name')
しかし、ブラウザーを更新すると、エラーはなくなり、ページは正常に読み込まれます。何がエラーを起こしたのかわかりません。
これが私のログです:
Started GET "/advertisements" for 182.93.88.6 at 2013-07-13 23:47:39 -0700
Processing by AdvertisementsController#index as HTML
Rendered shared/_profile_menu.html.erb (37.8ms)
Rendered advertisements/index.html.erb within layouts/application (38.1ms)
Completed 500 Internal Server Error in 40ms
ActionView::Template::Error (undefined method `full_name' for nil:NilClass):
4: <div class="six columns">
5: <ul class="breadcrumbs hide-for-small">
6: <li><a href="<%= root_url%>">Home</a></li>
7: <li class="current">
8: <% if current_user %>
9: <%= link_to "#{current_user.full_name unless current_user.full_name.nil?}", user_path(current_user) %>
10: <% else %>
app/views/shared/_profile_menu.html.erb:7:in `_app_views_shared__profile_menu_html_erb__3873584509912802681_40734020'
app/views/advertisements/index.html.erb:1:in `_app_views_advertisements_index_html_erb___4140482918641285695_46665240'
Started GET "/advertisements" for 182.93.88.6 at 2013-07-13 23:47:41 -0700
Processing by AdvertisementsController#index as HTML
Rendered shared/_profile_menu.html.erb (1.4ms)
Rendered advertisements/index.html.erb within layouts/application (5.5ms)
Rendered shared/_head.html.erb (0.9ms)
Rendered shared/_top_link.html.erb (0.0ms)
Rendered shared/_logo.html.erb (0.5ms)
Rendered shared/_header.html.erb (0.9ms)
Rendered shared/_footer.html.erb (6.6ms)
Rendered shared/_popups.html.erb (0.0ms)
Completed 200 OK in 17ms (Views: 14.4ms | ActiveRecord: 1.2ms)
ユーザーログインを管理するためにdeviseを使用しており、full_nameはuser.rbモデルのaccessible属性に次のように設定されています。
attr_accessible :full_name
サーバー環境は、nginx、unicorn、capistrano、および mysql データベースで設定されています。どんな助けでも大歓迎です。前もって感謝します。