可能是一个简单的问题,但我无法将数据从一个表单传递给另一个模型。我刚刚开始,所以代码非常简单。我有2个型号
class Client < ActiveRecord::Base
has_many :properties
end
class Property < ActiveRecord::Base
belongs_to :client
accepts_nested_attributes_for :client
end
我正在使用form_for并嵌套f.fields_for
<%= form_for(@property) do |f| %>
<div class="form-group">
<label for="exampleInputEmail1"> Descripcion:</label>
<%= f.text_field :descripcion, class: "form-control" %>
</div>
<%= f.fields_for :clients do |clients| %>
<%= clients.text_field :nombre %>
<%= clients.text_field :apellido %>
<% end %>
<% end %>
该表单仅适用于一个模型(属性),没有错误,但客户端的数据只是没有进入我的客户端模型。 我猜测问题可能是嵌套表单的强参数,但我无法解决问题。这是我的控制器属性:
class PropertiesController < ApplicationController
def index
@properties = Property.all
@clients = Client.all
end
def new
@property = Property.new
end
def create
@property=Property.new(params.require(:property).permit(:direccion, :descripcion, :piezas, :precio, :banos, :superficie_total, :pisos, :piscina, :superficie_construida, :amoblado, :estacionamiento, :bodega, :estado, :casa, :departamento, :terreno, :gastos_comunes, :comentarios, :comuna, :ciudad))
if @property.save
flash[:notice] = "La Propiedad ha sido creada exitosamente =)"
redirect_to(:action => 'index')
else
render('new')
flash[:error] = "Por algun motivo no pudimos crear la propiedad =("
end
end
def show
@property = Property.all
end
有人可以给我一些帮助吗?
答案 0 :(得分:0)
第一个错误
正如Documentation NestedAttributes中所提到的,您使用了错误的class Client < ActiveRecord::Base
has_many :properties
accepts_nested_attributes_for :properties
end
class Property < ActiveRecord::Base
belongs_to :client
end
。
if (this.entity == Q.FG(45768))
{
//read data in one manner
}
else if (this.entity == Q.FG(96583))
{
//read data in another manner
}
第二个错误是强参数。我想建议你去投掷Sitepoint rails-forms-with-nested-attributes会帮助你。