私はテーブルがlandslides
とsources
の2つあります(お互いに関係ないかもしれません)。私は、ユーザーが情報を記入してから両方のテーブルに提出できるようにするフォームが必要です。ここでsources
フィールドのない私の現在のフォームの:データベース内の2つのテーブルに1つのフォームを提出する - ruby on rails
= form_for :landslide, :url => {:controller => 'landslides', :action => 'create'} do |f|
.form-inputs
%form#landslideForm
.form-group.row
%label.col-sm-2.col-form-label{for: "textinput"}Date
.col-sm-10
= f.date_select :start_date, :class => "form-control"
#Some fields
.form-actions
= f.button :submit, class: "btn btn-lg btn-primary col-sm-offset-5", id: "submitButton"
とパラメータ:
def landslide_params
params.require(:landslide).permit(:start_date, :continent, :country, :location, :landslide_type, :lat, :lng, :mapped, :trigger, :spatial_area, :fatalities, :injuries, :notes)
end
def source_params
params.require(:source).permit(:url, :text, :landslide_id)
end
はまた、テーブルlandslides
から地すべりのIDを取るsources
通話landslide_id
の列があります。だから、ユーザーが新しい地すべりを提出すると、今後の地滑りID(自動インクリメントで、ユーザーは記入する必要はありません)をどのように取ることができますか?
ありがとうございます!あなたはそれに応じてaccept_nested_attributes_for
と巣フォームを使用する必要が
ありがとうございました。この答えは本当に詳細です。しかし、私はまだ '' unpermitted parameter:sources'というエラーが出ています。 –
デバッグのヘルプが必要な場合は、これを新しい点として出発点にしてください。 – max
地滑りに多くの情報源がある場合は、すべての情報源を情報源に変更する必要があるかどうかは、情報源に関するものだと思いますか? –