0

私の field_for が構文エラーをスローしています。理由がわかりません。これをどのようにインデントすると思いますか?

Inconsistent indentation: "\t  " used for indentation, but the rest of the document was indented using 1 tab.

= form_for(:contacts, url: contacts_path) do |f|
  = f.error_messages
  = f.label :subject, "Name"
  %span{style: 'color: red'} *
  = f.text_field :subject, class: "text_field width_100_percent"
  %br
  %br    
  = f.label "Email"
  %span{style: 'color: red'} *
  %br    
  = f.email_field :email, class: "text_field width_100_percent"
  %br
  %br
  = f.label "Phone"
  %br    
  = f.fields_for :custom_field do |cust|
    = cust.text_field :phone_number_28445
  %br
  %br
  = f.label "Question(s), and/or feedback"
  %span{style: 'color: red'} *
  %br
  = f.text_area :description, class: "text_field width_100_percent", style: 'height: 100px;'
  %br
  %br
  = f.submit "Submit", class: 'btn btn-warning'

私はそれを取り出すとすぐにフォームが再び機能するので、それが私のfield_forであることを知っています

4

2 に答える 2

1

スパンの横にフィールドを定義している場合は、%span{style: 'color: red'} * = f.text_field :subject, class: "text_field width_100_percent" のような 1 つのタブを使用します。コードのフォーマットとインデントの問題のように見えるため、コードをフォーマットする必要があります

于 2013-09-13T05:09:50.630 に答える
1

私はこれを以前に扱ったことがあります。それは苦痛になる可能性があります。通常、別の IDE からコードをコピーして貼り付け、ファイルの一部を変更した場合に発生します。

エラーが示すように、その行はタブと 2 つのスペースでインデントされていますが、ファイルの残りの部分はタブだけでインデントされています。一部の IDE では、実際にタブを挿入する代わりに、タブを入力するときに 2 つのスペースが挿入されます。エディターの設定を確認するか、他の行のインデントを置き換えて、すべてが各タブを置き換える 2 つのスペースでインデントされるようにします。

于 2013-09-13T00:43:09.640 に答える