開発経験の無い初心者です。
某学習サイトでRubyとRailsを勉強し、 このたび写真を投稿するサイトを作り始めました。
新たに写真を投稿する際に、都道府県名の情報をつけて登録し、都道府県別のページへ振り分ける機能を追加しようとしています。
都道府県の情報はセレクトボックスで選択できるようにする予定です。
###実現したいこと
セレクトボックスでカテゴリ(都道府県)を選択し、投稿すれば記事がそのカテゴリと結びついて保存されるようにしたい。
###現在の構成
DBは以下の設計です。
・postテーブル(id,image,prefecture_id)
・prefectureテーブル(id,name)
各都道府県名をprefectureテーブルに登録しid:1 name:北海道のように入力しています。
発生している問題
postテーブルのprefecture_idがNullのまま保存される。
該当のソースコード
controller部分
#app/controllers/post_controller.rb def create @post = Post.new(image: params[:image], prefecture_id: params[:prefecture_id]) end
View部分
<%= form_for @post, :url => {:action => :create} do |f| %> <%= f.label :prefecture_id %><br> <%= f.collection_select :prefecture_id, Prefecture.all, :id, :name %> <% end %>
アソシエーション
#app/models/post.rb class Post < ActiveRecord::Base belongs_to :prefecture end #app/models/prefecture.rb class Prefecture < ActiveRecord::Base has_many :posts end
###試したこと
関係しそうなサイトは一通り目を通しましたがどうしても解決できませんでした。
参考になるサイトのご教授だけでも結構ですのでよろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/08/23 12:01