2012-02-17 8 views
1

私は私のログに次のエラーを受信して​​います'アプリ/ビュー/通知/ _nsv_data.html.erbの#18:ActionView :: TemplateError(未定義のメソッド `名前 '(nilのために:NilClassライン上のゼロのため:NilClass)</p> <p>ActionView :: TemplateError未定義のメソッド`名)

コード:

<table border="0" cellspacing="0" cellpadding="0"> 
<% System.get_systems_in_display_order.each do |sys| -%> 
    <tr> 
     <td> 
      <%= check_box_tag "systems[][id]", sys.id, nsv_data.has_system?(sys.id) %> 
      <%= sys.name %> 
      <% if sys.can_has_version? -%> 
       <br/> 
      <% options = options_for_select(sys.get_system_version_select_options, nsv_data.system_version_ids(sys.id)) -%> 
      <%= select_tag "system_versions[#{sys.id}]", options, { :multiple => true, :size => 5, :id => "system__versions", :class => "system__box" } %> 
      <% end -%> 
     </td> 
    </tr> 
<% end -%> 
<tr> 
    <td> 
     <%= check_box_tag "has_other", 1, nsv_data.has_other_system? %> 
     Other <%= text_field_tag "other_system[name]", nsv_data.other_system.name %> 
    </td> 
</tr> 

私はプロセスにしようとしているデータは次のとおりです。

処理NoticesController位更新(2012-02-16で155.70.39.45夜2時21分39秒の場合)[PUT] セッションID:c5af3ddbc05df2759e9824d62398aab2 パラメータ:{ "コミット" => "更新"、 "other_system" => {"name" => ""} "notice" => {"closed_at(4i)" => "" internal "=>" 0 "、" severity "=>" 3 "、" resolution "=> "" isc_ticket_id "=>" "、" will_call_code "=>" "、" closed_at(5i) "=>" "、" ima_table_override "=>" 0 "、"調査 "=>" 0 "、" will_call_at (1i)=>「0」、「開始(1i)」=>「2011」、「will_call_at(2i)」=>「」、「region_ids」=>「「4」」、ラインポートにHSIがある場合、リスティングは移行されない(ACT = ZおよびREQTYP = HB)ことがあります(「ACT = Z」および「REQTYP = HB」の場合)、「onset(2i)」=>「12」、「estimated_resolution(1i)」=>「2012」、 (3i)=> "12"、 "estimated_resolution()"、 "severity_reason" => "最小限の機能低下"、 "will_call_at(3i)" => ""、 "ticket_id" => "5352829" 2i) "=>" 3 "、" workaround "=>"プロバイダはすべてのリストがsuccから移行したことを検証する必要があります要するに毎月のベリフィケーションプルーフレポート、またはDLISを介して。リスティングが移行されておらず、HSIで移植されたTNに関連付けられていると判断した場合は、リスティングアカウントマネージャーに連絡してください。 "、" closed_at(1i) "=>" "、" onset(4i) "=>" 09 " (5i)=> ""、 "closed_at(2i)" => ""、 "onset(5i)"、 "estimated_resolution(3i)" => "17"、 "will_call_at(4i)" => " )、 "event_error_msg" => ""、 "estimated_resolution(4i)" => ""、 "closed_at(3i)" => ""、 "new_document_attributes" => [{"uploaded_document" => "、" estimated_resolution(5i) "=>" "}"、 "エスカレーション" => ""、 "インパクト" => "ラインポータルにHSIがある場合、リストはマイグレーションできません(ACT = ZおよびREQTYP = CB) "authenticate_token" => "2c84900beb41fec0fda516b6f022c975fb37148c"、 "systems" => [{"" id "=>" 1 "}、{" id "=" "}"アクション "=>"更新 "、" _メソッド " > "7"}]、 "id" => "1554"、 "controller" => "notices"} レンダリングテンプレート/

+0

nsv_dataにはどのような種類がありますか?明らかに、nsv_data.other_systemはnullです。 –

+0

フォームを送信しているときに、2つの異なるハッシュを1つの通知ともう1つの通知をother_systemに渡しています。あなたのコントローラのother_systemをnsv_dateに割り当てていますか? その他<%= text_field_tag "other_system [名]"、nsv_data.other_system.try(::名)%> そして今、私は次のエラーを受信して​​います: –

答えて

0

sys.try(:name)を追加するだけです。 thisもチェックしたいかもしれません。

+0

は、私は次のことをやった ActionView :: TemplateError(NoMethodError )アプリ/ビュー/通知/ _nsv_data.html.erbのライン#18に: – user1215118

+0

私はそれを削除した場合不思議、その後正常に動作します:​​ \t \t \t <%= check_box_tag "has_other"、1、nsv_data.has_other_system? %> \t \t \tその他<%= text_field_tag "other_system [名]"、nsv_data.other_system.try(:名)%> \t \t – user1215118

0

データベースに問題がありました。データベースを再デプロイした直後に修正されました。つまり、コードは正常です。

大変ありがとうございます。