0

我有一个表格来创建一个新Player/players/new.html.erb

<%= form_for(@player) do |f| %>
  ...
<% end %>

我想包含在主页中。

如果我只是复制粘贴整个表单,我会收到此错误:undefined methodmodel_name' for NilClass:Class`

我可以将表单包含在 iframe 中

<div>
  <iframe src=../players/new.html>
</div>

但这显示了带有页眉和页脚的整个页面。

我怎样才能包含表单,最好是直接从文件中(即没有复制粘贴)?

4

2 回答 2

2

form_for至少@player需要在场

如果您真的想在主页上包含该表单,那么在您的主控制器操作中初始化新的 Player 实例:

@player = Player.new

但是您必须意识到PlayerController(或您为其创建该表单的任何控制器)的视图可以依赖于访问辅助方法,PlayerHelper因此您可能还需要将其包含在您的HomeHelper

于 2012-07-07T14:17:28.430 回答
1

我会将这些字段移动到一个部分中,并在主页和其他页面上重复使用这些字段。请记住,这将在其中设置 url 以form_or使其正常工作。

于 2012-07-07T14:22:33.963 回答