Listings というリソースと email というリソースがあります
リスト has_many :emails 電子メール belongs_to :listing
リスト ID を email.listing_id に渡そうとしていますが、次のエラーが発生し続けます。
Couldn't find Listing without an ID ActiveRecord::RecordNotFound in EmailsController#create
これが私のコードです:
class EmailsController < InheritedResources::Base
def new
@listing = Listing.find(params[:listing_id])
@email = Email.new
end
def create
@listing = Listing.find(params[:listing_id])
@email = Email.new(params[:email])
@email.user_id = current_user.id
end
リスト表示ページから、listing.id を渡します
<%=link_to "Email Listing", new_email_path(:listing_id => @listing.id)
メールフォーム
<%= f.input :email %>
<%= f.input :message %>
<%= f.hidden_field :listing_id, :value => @listing.id %>
%= f.button :submit, :value=> "Send Email" %>
パラメータ:
"email"=>{"email"=>"xyz@z.com",
"message"=>"hello",
"listing_id"=>"3"},
"commit"=>"Send Email"}