Я пытаюсь создать форму, которая позволит моим пользователям создавать хранилище, связанное с ними в рельсах.Магазин создать не сохранять в базу данных
У меня есть ассоциация has_many и belongs_to, но я не могу заставить хранилище даже сохранить базу данных, чтобы узнать, работает ли ассоциация.
В настоящее время для формы в моих магазинах # новый вид у меня есть:
<%= form_for @store do |f| %>
<div class = "field">
<%= f.label :name %>
<%= f.text_field :name %>
</div>
<%= f.submit "Submit" %>
<% end %>
и для моих новых и создания действий У меня есть следующие в моем контроллере хранит
def new
@store = Store.new
end
def create
@user = current_user
@store = @user.stores.new(params[:stores])
if @store.save
redirect_to store_path
else
render newstore_path
end
end
Меня зовут модель определенно единственное (магазин).
Это работало для меня в прошлом, и поэтому я смущен, почему это не сейчас.
Если кто-то может показать мне самый простой способ успешно связать две модели с использованием вложенных ресурсов, а затем создать форму, которая будет поддерживать эту связь, которая была бы невероятно полезной, поскольку я боролся с этим в течение последних нескольких дней и действительно думаю, что хороший пример поможет.
Любая информация, которую люди могут предложить, была бы отличной, хотя. Заранее спасибо :)
Hey Pjammer, спасибо за ваш ответ, к сожалению, я до сих пор не могу его фактически сохранить в базе данных. Это не вызывает каких-либо ошибок вообще, просто не сохраняется в моей таблице магазинов - вы знаете, почему это может быть? –
Когда вы используете метод bang 'create!', Он сохраняет в db или ошибки. Обычно это только два варианта. если вы можете вставить консоль, создав «User.first.stores.create!», это не значит, что я не верю вам, но ... – pjammer
Эй, Пьямер, я просто дал вам представление об 'User.first.stores. create! ', и он с радостью добавил строку магазина в таблицу магазинов, включая user_id. Затем я пытаюсь сделать то же самое в своем представлении, хотя 'current_user.stores.create! (Params [: stores])', и он не работает - не является ли это элементом params? Еще раз спасибо за вашу помощь :) –