Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 3 Formtastic集合\u选择不相关的模型_Ruby On Rails 3_Formtastic - Fatal编程技术网

Ruby on rails 3 Formtastic集合\u选择不相关的模型

Ruby on rails 3 Formtastic集合\u选择不相关的模型,ruby-on-rails-3,formtastic,Ruby On Rails 3,Formtastic,也许这是一种错误的做事方式——如果你有更好的建议,我会接受的 我们有一个简单的订购系统-我们的订单有许多里程碑,每个里程碑都属于一个订单 顺便说一句,每个里程碑也有指定的用户,但我不想在两者之间建立关系,因为我的用户也拥有订单 在我的里程碑表格中,我有以下内容: <%= semantic_form_for([@order, @milestone]) do |f| %> ..... <div class="field"> <%= f.label :miles

也许这是一种错误的做事方式——如果你有更好的建议,我会接受的

我们有一个简单的订购系统-我们的订单有许多里程碑,每个里程碑都属于一个订单

顺便说一句,每个里程碑也有指定的用户,但我不想在两者之间建立关系,因为我的用户也拥有订单

在我的里程碑表格中,我有以下内容:

<%= semantic_form_for([@order, @milestone]) do |f| %>
.....
 <div class="field">
    <%= f.label :milestone_user %><br />
    <%= f.input :milestone_user, :as => :radio, :collection => User.find(:all, :order => "name ASC") %>
  </div>
....
 <%= f.submit %>
<% end %>

.....

:radio,:collection=>User.find(:all,:order=>“name ASC”)%%> ....
这一切都是奇妙的,我可以看到我的用户呈现为单选按钮

问题是,当我保存时,留下的是用户id而不是名称

我怎样才能把它转成一个名字


谢谢

如果您的模型中有正确的关联,那么以下应该可以工作(昨天刚刚在视图模板中完成)

其中,在我的模型中:

class Place < ActiveRecord::Base
  attr_accessible :name, :cplace_id, :cmoney_id, :copen_id, :description

  belongs_to :user
  belongs_to :cplace
...
end

class Cplace < ActiveRecord::Base

  attr_accessible :name, :description

  has_many :places
...
end
其中place是包含place的实例变量。。。实例


希望它有帮助,并快乐编码

这不是我想要的,因为我的用户没有里程碑。有点晚了。但是您可以使用从params获得的id,并使用类似于
Milestone.find(params[:id])的内容。name
class Place < ActiveRecord::Base
  attr_accessible :name, :cplace_id, :cmoney_id, :copen_id, :description

  belongs_to :user
  belongs_to :cplace
...
end

class Cplace < ActiveRecord::Base

  attr_accessible :name, :description

  has_many :places
...
end
place.cplace.name