私はリモートについて混乱しています:Railsフォームで真ですが、私は非同期にするためにいくつかのJavascriptが必要だと思っていましたが、これは私のページを壊すようです。ここでRailsとAJAX remote:それ以外は何が必要ですか?
は、すべての予定を表示部分を含んで本当に簡単index.html.hamlである:ここでは
%h1 Calander
%h2 AppointmentsController
%h3 Make a new appointment
= form_for @appointment, remote: true do |f|
= f.text_field :title
= f.text_field :appt_time
= f.submit 'Make appointment'
#appointments
=render 'appointments'
は、以前に部分的に言及されている:インデックスの
[email protected] do |a|
%h3= a.title
%p= a.appt_time
コントローラのメソッドを作成し、 :
def index
@appointments = Appointment.order('appt_time ASC')
@appointment = Appointment.new
end
def create
@appointmet = Appointment.create(appointment_params)
redirect_to :root
end
これで正常です。私は新しい予定を追加することができます、提出をヒットし、ページを更新せずに新しい予定が表示される、私はremote: true
が含まれていると思います。だから私は要求を処理するために何かを追加する必要がありますか?この要求を処理し、完全にリモートに依存するものを含まないことでベストプラクティスに違反していますか?
ありがとうございました! '<%= jレンダリング "アポイントメントの" j "とは何ですか?%>' – tfantina
ERBはファイルの埋め込みであるため、すべてのRubyコードはファイルの内容に変換されます。ファイルの内容をJS文字列 ''
'にします。これはERBにファイルの内容として書くのではなく、JSのコードとして書くことを教えてくれるでしょう:)もしHTMLの部分的な内容が ''/n ''改行を持っていたら、これはファイルの改行になります'/ n" 'を含むJS文字列です。 – fbelanger