私はまずWeb開発の初心者だと言いましょう。 私は、レールがデータベースからすべての部屋を集めるページを持っているということです。そしてそれをテーブルに並べます。ここまでは順調ですね。しかし、私は、ユーザーが各列の横にあるボタンをクリックすると、そのユーザーのための部屋を予約することができます。別のフォームレールの中のフォーム
Atm私は80%働いています。事は、私は別のフォームの中にフォームを持っているので、ユーザーが本を押すと、それはofcの最後の行を予約します!どうすればこの問題を解決できますか?私はこれを修正するためにJavaScriptを使用して読んで、初心者として私は本当にjavascriptを知っていない。
私はReservation.newフォームをall_roomsフォーム内に置くことができました。しかし、私はdatetimepickerの値をユーザーから取得する必要もあります。私はそれを外に置いたのです。
<%= form_for(Reservation.new, remote: true, format: :js, url: {controller: "booker", action: "create"}) do |new_res| %>
<div class="calender">
<%= new_res.date_field :date, :value => (Time.now + 6.days).strftime('%Y-%m-%d') , min: 6.days.from_now, max: 90.days.from_now %>
</div>
<div class="time">
<%= new_res.time_select :start_time , {:default => {:hour => 10 , :minute => 00}, minute_step: 15 , :start_hour => 8, :end_hour => 18, :hour => 11} %>
<%= new_res.time_select :end_time , {:default => {:hour => 14 , :minute => 00}, minute_step: 15 , :start_hour => 8, :end_hour => 18, :hour => 11} %>
</div>
</div>
<div class="t_Data">
<table class ="rooms_to_book">
<tr>
<th>Namn</th>
<th>Storlek</th>
<th>Byggnad</th>
<th>Utrustning</th>
<th>Booka</th>
</tr>
<% @all_rooms.each do |r| %>
<tr>
<td><%= r.room %></td>
<td><%= r.room_size %></td>
<td><%= r.building %></td>
<td><%= r.room_description %></td>
<td>
<%= new_res.hidden_field :room, value: r.room %>
<%= new_res.hidden_field :building, value: r.building %>
<%= new_res.hidden_field :room_size, value: r.room_size %>
<%= new_res.hidden_field :room_description, value: r.room_description %>
<%= new_res.submit "Book" %>
</td>
</tr>
<% end %>
</table>
</div>
<% end %>
だから質問があります。どうすればこの問題を解決できますか?新しい予約を作成し、すべてのデータ+ユーザーが選択した日付を収集します。そのため、各行に固有です。あなたはこの
<%= new_res.submit "Book", name: r.id %>
などの送信ボタンのそれぞれに名前を付けることができ
'@ all_rooms'をフォームで利用できるように' fields_for'メソッドを使用してください –