0

私はこの奇妙な問題に悩まされています。この問題は本番サーバーのみで発生し、ローカル サーバーでは問題なく動作します。

本番ログを確認したところ、エラーは次の行にあることがわかりました。

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 データベースで設定されています。どんな助けでも大歓迎です。前もって感謝します。

4

1 に答える 1

0

サーバーに何らかの問題が発生したようです。アプリケーションを再デプロイしたところ、すべて正常に機能しました。

于 2013-07-15T09:40:15.393 に答える