我在rails应用中有一个包含许多文本字段的表单。提交后,我的评论页面上只显示一个字段,但是如果我检查它,我可以正确地看到每个字段。我只能看到姓名字段。
我的控制器:
class CrewmembersController < ApplicationController
def show
@crewmember = Crewmembers.find(params[:id])
end
def new
end
def create
@crewmember = Crewmembers.new(crewmember_params)
@crewmember.save
redirect_to @crewmember
end
private
def crewmember_params
params.require(:crewmember).permit(:name, :email)
end
end
我的show.html.erb页面:
<p>
<strong>Name:</strong>
<%= @crewmember.name %>
</p>
<p>
<strong>Title:</strong>
<%= @crewmember.title %>
</p>
<p>
<strong>Department:</strong>
<%= @crewmember.department %>
</p>
答案 0 :(得分:2)
根据您的create
和crewmember_params
方法,您使用 仅限姓名和电子邮件字段 创建crewmember
条记录。这就是show.html.erb
中仅显示 名称 字段的原因。您需要将crewmember_params
方法更改为
def crewmember_params
params.require(:crewmember).permit(:name, :email, :title, :department)
end
如果你没有表格中的标题和部门字段。然后你需要改变它以包括那些。
附加说明:
此外,我还注意到您使用的是复数型号名称( Crewmembers ),根据惯例,我们不鼓励这样做。将其更改为单数( Crewmember ),也不要忘记将文件名更改为单数。