2016-12-07 12 views
0

私はUser,ServiceおよびBookingという3つのモデルを持っています。ユーザはサービスを予約することができ、これはBookingモデルのフォームを介して行われます。あるモデルから別のモデルに値を渡す

私は予約可能なページを「予約する」と表示して、new_bookings_pathにリダイレクトしてユーザーが予約できるようにします。

データベースのレコード(タイトル、価格など)として保存されているサービスの値を新しい予約フォームに転送できるようにするには、「今すぐ予約」リンクをクリックします。したがって、ユーザーが予約フォームに記入すると、実際に予約しているサービスを確認することができます。

これは、予約のための私の_form.htm.erbです:私はわからないが、私が行うことができるようにしたいどのような

<%= simple_form_for (@booking) do |f| %> 
    Booking Date: <%= f.datetime_select :date %> 
    <br> 
    Time start<%= f.time_select :timestart %> 
    <br> 
    Time end <%= f.time_select :timeend %> 
    <%= f.input :address, label: "Address" %> 
    <%= f.input :postcode, label: "Postcode" %> 
    <%= f.input :suburb, label: "Suburb" %> 
    <br> 
    <br> 

    <br><br> 
    <%= f.button :submit %> 
<% end %> 

場所は、予約の下部に

<%= @service.title %> 

のようなものですユーザーが「今すぐ予約」をクリックしたサービスのタイトルにアクセスする方法。

"Book Now"リンクをクリックしたときに、サービスの値を取得し、予約コントローラ/ _formの下で何らかの方法でアクセスできますか?

これは、 "今すぐ" のリンクです:new_booking_path

<%= link_to "Book Now", new_booking_path %> 

答えて

2

パスサービスID:

<%= link_to "Book Now", new_booking_path(service_id: @service.id) %> 

BookingsControllerでのごnewアクション内、サービス取得:

def new 
@service = Service.find_by_id(params[:service_id]) 
#your code goes here 
end 

次に、あなたのフォームに<%= @service.title %>を書くことができますewページ。

+1

私はできるだけ早くこれを受け入れます! –

関連する問題