缩写模型:
class Event < ActiveRecord::Base
belongs_to :place
accepts_nested_attributes_for :place
end
class Place < ActiveRecord::Base
has_many :events
end
缩略事件控制器:
def new
@event = Event.new
@event.build_place
def create
@event = Event.new(params[:event])
respond_to do |format|
if @event.save
缩略图:
<%= form_for(@event) do |f| %>
<%= fields_for @event.place do |place_f| %>
鉴于上述情况...... 我希望用户能够创建一个事件。当他们创建活动时,他们可以选择添加地点。该地方可能存在也可能不存在于数据库中。
目前,该地点未在表单提交时关联或创建,但肯定在帖子参数中。
对我做错了什么的任何想法?这适用于Rails 3。
答案 0 :(得分:0)
如果您不想让用户填充地点属性,请从控制器中的@event.build_place
操作中删除new
def new
@event = Event.new
end
并从您的视图中移除<%= fields_for @event.place do |place_f| %>
块。