我这个问题真的很尴尬:形式的Rails 4.0
我要发布从一个视图的意见和如果发生形式的错误,我想重新填充表单。我使用渲染方法,但我的表单没有重新填充。
予指定的形式从一个视图中显示,并使用另一控制器动作,通过换言之是指:
形式从称为:视图/汽车/ show.html.erb以下代码:
<h1>Fiche détaillée</h1>
<%= @car.marque %><br>
<%= @car.modele %><br>
<%= @car.nbkm %><br>
<%= @car.couleur %><br>
<%= @car.disponibilite %><br>
<hr>
<% x=0 %>
<h1><%= pluralize(@car.comments.count, 'commentaire') %></h1>
<% @car.comments.each do |k| %>
<%= x+=1 %>
Email : <%= k.email %><br>
Sujet : <%= k.sujet %><br>
Commentaire : <%= k.commentaire %><br>
<%= link_to 'Supprimer', [k.car, k], method: :delete %><br><br>
<% end %>
<hr>
<h1>Ajouter votre commentaire</h1>
<div style='width:300px;'>
<% flash.each do |key, msg| %>
<% if msg.count >0 %>
<p class="bg-danger" style='padding:10px;'><%= pluralize(msg.count,'error') %>
<ul><% msg.full_messages.each do |m|%>
<li><%= m %></li>
<% end %>
</p>
<% end %>
<% end %>
</ul>
<%= form_for([@car,@car.comments.build]) do |co| %>
<%= co.label :'Email' %><br>
<%= co.text_field :email , class: 'form-control' %><br>
<br>
<%= co.label :'Sujet' %><br>
<%= co.text_field :sujet , class: 'form-control'%><br>
<br>
<%= co.label :'Commentaire' %><br>
<%= co.text_area :commentaire , class: 'form-control' %><br>
<br>
<%= co.submit :'Envoyer votre commentaire', class: 'btn btn-info'%>
<% end %>
</div>
低于我控制器:
控制器1:控制器/ cars_controller.rb
def create
#render text: params[:car].inspect
@car = Car.new(params[:car].permit(:marque,:modele,:nbkm,:couleur,:disponibilite))
if [email protected]
render 'new'
else
redirect_to @car
end
end
def show
@car = Car.find(params[:id])
end
def index
@cars=Car.all
end
控制器2:控制器/ comments_controller.rb
class CommentsController < ApplicationController
def new
@comment=Comment.new
end
def create
@car = Car.find(params[:car_id])
@comment = @car.comments.create(params[:comment].permit(:email,:sujet,:commentaire))
if [email protected]
flash[:error] = @comment.errors
flash.keep[:error]
render 'cars/show'
else
redirect_to car_path(@car)
end
end
def destroy
@car = Car.find(params[:car_id])
@comment = @car.comments.find(params[:id])
@comment.destroy
redirect_to car_path(@car)
end
end
我真的不明白为什么这是行不通的!
非常感谢你的任何援助;)
你的代码看起来轨道的建议非常不同。你可以试试'rails g scaffold name fields ...'看看我的意思? – devanand
对不起,但我想了解我的代码最初怎么了,以了解如何导轨工作 – CodeRevenger