在我的目标网页上,我有一个联系表单
<%= render 'contacts/form' %>
当对象有效时,一切都很有效。但我在登录页面上渲染此联系表单时遇到问题,其中包含有关属性错误的信息。
这是我的控制器:
class ContactsController < ApplicationController
def new
end
def create
@contact = Contact.new(contact_params)
if @contact.save
redirect_to root_url
flash[:success] = "Dziękuję za wysłanie wiadomości"
else
render 'homes/home'
end
end
private
def contact_params
params.require(:contact).permit(:podpis, :wiadomosc, :email, :nickname)
end
end
我的家/主页模板:
<div id="page-content">
<!-- O mnie -->
<%= render 'o_mnie' %>
<!-- Resume -->
<%= render 'resume' %>
<!-- Blog -->
<%= render 'blog' %>
<!-- Portfolio -->
<%#= render 'projekty' %>
<!-- Contact -->
<%= render 'kontakt' %>
</div>
这是我的应用程序布局
<body>
<%= render 'layouts/header' %>
<div id="page-content">
<%= render 'shared/flashes', flash: flash %>
</div>
<%= yield %>
</body>
当我检查堆栈类似问题时,现在我知道放置在渲染&#39; homes / home&#39;中的问题。这给了我错误
缺少部分联系人/ _o_mnie,application / _o_mnie {:locale =&gt; [:pl],:formats =&gt; [:html],:variants =&gt; [],:handlers =&gt; [:erb ,:builder,:raw,:ruby,:jbuilder,:coffee]}。搜索:
当我尝试渲染root_url时,我遇到了同样的问题。 我的代码出了什么问题?
答案 0 :(得分:4)
如果模板由其他控制器使用,则必须指定前缀。
更改为:
<div id="page-content">
<!-- O mnie -->
<%= render 'homes/o_mnie' %>
<!-- Resume -->
<%= render 'homes/resume' %>
<!-- Blog -->
<%= render 'homes/blog' %>
<!-- Portfolio -->
<%#= render 'homes/projekty' %>
<!-- Contact -->
<%= render 'homes/kontakt' %>
</div>
答案 1 :(得分:1)
考虑您的文件(_o_mine.html.erb
,_resume.html.erb
,_blog.html.erb
,_kontakt.html.erb
)位于/app/views/shared
文件夹
然后会是这样的
<div id="page-content">
<!-- O mnie -->
<%= render 'shared/o_mnie' %>
<!-- Resume -->
<%= render 'shared/resume' %>
<!-- Blog -->
<%= render 'shared/blog' %>
<!-- Portfolio -->
<%#= render 'shared/projekty' %>
<!-- Contact -->
<%= render 'shared/kontakt' %>
</div>