Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.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 显示Rails 4中的所有嵌套模型_Ruby On Rails_Ruby On Rails 4 - Fatal编程技术网

Ruby on rails 显示Rails 4中的所有嵌套模型

Ruby on rails 显示Rails 4中的所有嵌套模型,ruby-on-rails,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 4,我是Rails的新手,我通过自己的项目来教自己如何使用它 我有一个名为“用户”的模型,它与一个名为“宠物”的模型有一对多的关系。Pets模型与用户之间存在“属于”关系。我正在尝试建立一个页面,用户可以看到所有宠物的列表。我该怎么做呢 谢谢。我同意塔默·施拉什的观点。听起来,通过练习教程,您可以更多地了解模型-视图-控制器(MVC)的概念,并与数据库交互,从而受益匪浅 由于您希望所有用户都能看到所有宠物,Pet.all将返回宠物表的所有行 在控制器操作中,将@pets分配给Pet.all,然后使用

我是Rails的新手,我通过自己的项目来教自己如何使用它

我有一个名为“用户”的模型,它与一个名为“宠物”的模型有一对多的关系。Pets模型与用户之间存在“属于”关系。我正在尝试建立一个页面,用户可以看到所有宠物的列表。我该怎么做呢


谢谢。

我同意塔默·施拉什的观点。听起来,通过练习教程,您可以更多地了解模型-视图-控制器(MVC)的概念,并与数据库交互,从而受益匪浅

由于您希望所有用户都能看到所有宠物,
Pet.all
将返回宠物表的所有行

在控制器操作中,将
@pets
分配给
Pet.all
,然后使用该实例变量循环遍历pets并显示有关它们的信息

<ul>
<%= @pets.each do |pet| %>
  <li><%= pet.name %></li>
<% end %>
</ul>

您最好查看R以了解如何正确执行此操作。基本上,您希望在Rails中实现的所有功能都是使用-each
视图
控制器
获取数据,该控制器从其
模型
构建数据

以下是一个基本示例:


型号

#app/models/pet.rb
Class Pet < ActiveRecord::Base
   belongs_to :user
end

#app/models/user.rb
Class User < ActiveRecord::Base
   has_many :pets
end
#config/routes.rb
resources :pets #-> /pets
#app/controllers/pets_controller.rb
def index
   @pets = Pet.all
end
#app/views/pets/index.html.erb
<% @pets.each do |pet| %>
    <%= pet.name %>
<% end %>
--

控制器

#app/models/pet.rb
Class Pet < ActiveRecord::Base
   belongs_to :user
end

#app/models/user.rb
Class User < ActiveRecord::Base
   has_many :pets
end
#config/routes.rb
resources :pets #-> /pets
#app/controllers/pets_controller.rb
def index
   @pets = Pet.all
end
#app/views/pets/index.html.erb
<% @pets.each do |pet| %>
    <%= pet.name %>
<% end %>
--

视图

#app/models/pet.rb
Class Pet < ActiveRecord::Base
   belongs_to :user
end

#app/models/user.rb
Class User < ActiveRecord::Base
   has_many :pets
end
#config/routes.rb
resources :pets #-> /pets
#app/controllers/pets_controller.rb
def index
   @pets = Pet.all
end
#app/views/pets/index.html.erb
<% @pets.each do |pet| %>
    <%= pet.name %>
<% end %>
#app/views/pets/index.html.erb

用户应该看到自己的宠物还是每个人的宠物?我是说每个人的宠物。对不起,请告诉我们你做了什么,你的问题太广泛了。如果你还没有做过任何事情,也许你应该去学习一个“嵌套模型”也是不同的。嵌套模型是使用表单从父模型创建记录或更新子模型属性的位置,
接受
()的_嵌套_属性_。