1

私は haml をいじり始めたばかりで、何が間違っているのかを理解しようとしています。

記事/edit.html.haml

=render partial: 'form', f: f
  .submit_field
    =f.submit "Update Article"

記事/_form.html.haml

=form_for @article do |f|
  -if @article.errors.any?
  #error_explanation
    %h2
      =pluralize(@article.errors.count, "error")
      prohibited this task from being saved:
      %ul
        -@article.errors.full_messages.each do |msg|
          %li=msg

  .text_field
    =f.label :title 
    %br
    =f.text_field :title

  .text_field
    =f.label :body
    %br
    =f.text_area :body, {rows: 10, cols: 40}

次のエラーが表示されます:構文エラー、予期しない keyword_ensure、 $end at .submit_field を期待しています。誰かが私を正しい方向に向けることができますか?

4

1 に答える 1

1

送信ボタンをフォームのパーシャルに移動してみてください。

記事/edit.html.haml

=form_for @article do |f|
  =render partial: 'form', f: f

記事/_form.html.haml

-if @article.errors.any?
#error_explanation
  %h2
    =pluralize(@article.errors.count, "error")
    prohibited this task from being saved:
    %ul
      -@article.errors.full_messages.each do |msg|
        %li=msg

.text_field
  =f.label :title 
  %br
  =f.text_field :title

.text_field
  =f.label :body
  %br
  =f.text_area :body, {rows: 10, cols: 40}

.submit_field
  =f.submit "Update Article"
于 2012-09-03T02:19:57.717 に答える