【发布时间】:2011-05-23 04:50:29
【问题描述】:
我正在使用属于其他 2 个模型的模型。当我尝试创建它时,我设法获取了两个 id,但内容本身并未存储在数据库中
def create
@person = Person.find(current_person)
@message = Message.create(:group => Group.find(params[:group_id]), :person => Person.find(current_person))
if @message.save
redirect_to(:back)
else
redirect_to(:back)
end
end
<% form_for(:message, :url => messages_path(:person_id => current_person.id, :group_id => @group.id)) do |f| %>
<%= f.text_area :content %>
<%= f.submit "Submit" %>
<%end %>
另外,content 在数据库中设置为文本,我使用的是 PostgreSQL。
【问题讨论】:
-
当你在模型上调用
create方法时,它会保存到数据库中。可能,您需要调用new来初始化新实例。或者,如果您喜欢create方法 - 使用new_record?查看它是否保存了某个实例(由于验证失败或类似情况)。
标签: ruby-on-rails ruby-on-rails-3 forms controller