Coś dzisiaj przyćmiony chyba jestem.
<% if(@post.gallery) %>
<% @post.gallery.images.each do |a|%>
<%= a.name %>
<% end %>
<% end %>
I działa.
Przepraszam za głupie pytanie ;]
Witam ponowie.
Jednak mam problemy z tym powiązaniem.
Jeżeli w bazie danych ręcznie ustawię id posta wszystko działa ale chciałbym robić to przez formularz z poziomu edycji dodawania posta.
Niestety dostaję błąd:
Gallery(#75179604) expected, got ActiveSupport::HashWithIndifferentAccess(#46046928)
Post model:
has_one :gallery
Gallery model:
belongs_to :blog
accepts_nested_attributes_for :blog
Post view:
<%= form_for(@post) do |f| %>
<%= f.fields_for :gallery do |g| %>
<%= g.collection_select :id,Gallery.all,:id,:name %>
<% end %>
<% end %>
Request
{“id”=>“a–2”,
“_method”=>“put”,
“post”=>{“gallery”=>{“id”=>“1”},
“title”=>“asdas”,
“content”=>“a”,
“kategorie_id”=>“1”,
“commit”=>“Zapisz”,
“authenticity_token”=>“JIjtATZwDJCqJibBBdDEy/6HBMJJ+Hw5XtfFtyv2vwk=”,
“utf8”=>“✓”}
app/controllers/post_controller.rb:33:in new' app/controllers/post_controller.rb:33:in
create’
Prawdopodobnie muszę dopisać coś w kontrolerze
@gallery = Gallery.find(params[:gallery_id])
@blog = Post.new(params[:post])
Dodam jeszcze że w tabeli post mam kolumnę post_id