我的Rails应用程序具有由用户创建的用户和任务。用户还可以创建任务并将其分配给其他用户。我不太确定如何在这里建立联系。 我知道因为任务是由用户创建的,所以我可以有如下的关联, class User
has_many :tasks, dependent: :destroy, foreign_key: :user_id
end class Task
belongs_to :user
end 我还想为Task模型中的创建者添加一个关联,但我不确定如何做,因为创建者也将是User类的一个实例,而我已经与User有了一个belongs_to关联 我尝试通过以下方式为Task模型中的创建者添加
我有一些问题,试图理解当建立一个rails应用程序与几个模型和他们之间的关系.
如果我举一个基本的例子,比如模型组,模型用户和模型车
class Group < ActiveRecord::Base
has_many :users
end
class User < ActiveRecord::Base
belongs_to :group
has_many :cars
end
class Car < ActiveRecord::Base
belongs_to :user
end
这些关系语句会自动创建以下函数吗?
group.usersuser.group
我在rails中有一个模型,比方说User,我想让它与另一个用户建立关系。
用户A可以是用户B的老板,用户B可以是用户C和用户D的老板。
这种关系是一对多的。一个用户可以站在多个用户之上。
我该怎么做呢。
我的用户模型当前有一个名为boss_id的ID,如果用户处于食物链的顶端,则该值将为零。
我的活动记录类如下所示:
class User < ActiveRecord::Base
has_many :users #People beneath the user
belongs_to :user
end
但现在我想使用带名称的关系。假设是boss和followers。
我如何才
对这个愚蠢的问题很抱歉,但我是新来的。当我使用这个命令rails g model Post title:string description:text创建表时。如何进一步建立另一个表之间的连接呢?
还是在models表中有足够的选择belongs_to?因此,连接将已经建立,您将不需要在迁移中安装任何东西。
我被一个小问题困住了,但一直以来我都在努力找出我做错了什么。我的场景是,我有一个现有的模型user,现在我创建了另一个名为“`user_comment”的模型。以下是我所述的详细资料:
用户模型:
class User < ActiveRecord::Base
has_many :user_comments
end
User_comment模型:
class UserComment < ActiveRecord::Base
belongs_to :user
end
迁移文件:
class CreateUserComments < ActiveRecord::
我有一个简单的应用程序和一个认证系统从设计。我尝试向用户模型中添加角色。但什么都没发生。
我所做的是创建了角色模型并将其链接到用户模型:
$ rails g model Role name:string
$ rails g migration addRoleIdToUser role:references
$ rake db:migrate
(按照设计wiki的指示)
然后在我的模型中:
class User < ActiveRecord::Base
belongs_to :role
end
class Role < ActiveRecord::Base
has_many
我有一个简单的rails应用程序,我试图在两个模型之间建立关系。
我有一个计划模型和一个订阅模型。
一个订阅将只有一个计划,但计划可以属于多个订阅。
由于没有属于多个关系,我猜创建这种关系的最好方法是使用带有plan_subscription的连接表的has_and_belongs_to_many -这是正确的吗?
假设这是正确的,我如何确保我的订阅只创建了一个计划?
我目前拥有的代码如下:
class Subscription < ApplicationRecord
has_and_belongs_to_many :plans
end
class Plan < Applic
我正在用Rails制作一个应用程序来显示动画,这些动画已经并且属于许多语言,所以我创建了一个HABTM协会:
class Anime < ActiveRecord::Base
has_and_belongs_to_many :languages
end
class Language < ActiveRecord::Base
has_and_belongs_to_many :animes
end
现在我不知道如何在它们之间建立联系,我创建了许多语言的记录来使用它们,例如,ID 1的语言是英语,ID 2的语言是西班牙语等等。我只想把动画和语言联系起来,也就是说,如果我想说只有
我正试图为博客上的帖子建立一个经典的“喜欢”模型,用户可以创建一个类似于任何帖子的模型。我有以下几种型号:
class Post < ApplicationRecord
belongs_to :user
has_many :likes
end
class User < ApplicationRecord
has_many :posts
has_many :likes
end
class Like < ApplicationRecord
belongs_to :user
belongs_to :post, counter_cache: true
en
编辑--我从原版中编辑了这段代码,以使它更容易理解。
我理解对象关系阻抗问题。我理解Rails STI和多态性( Rails方式,它不是真正的OO多态性)。我已经阅读了大量的博客和问题,但仍然找不到这个问题的答案。
class Person < ApplicationRecord (ie what was ActiveRecord::Base)
end
class Employee < Person
end
class Customer < Person
end
..。多种其他类型的人
现在,让我们说‘客户’要求扩展系统,并创建一些新的东西。让我们称之为项目,我们可以为
我在Rails上生成了两个表及其模型和控制器。
这两个表是用户和角色。
脚手架命令创建两个表模型和控制器。
app/models/user.rb
class User < ApplicationRecord
has_and_belongs_to_many :roles
end
app/models/role.rb
class Role < ApplicationRecord
has_and_belongs_to_many :users
end
然后,我使用以下命令生成多到多关系第三表。
rails generate migration CreateJoinTable
我是一个初学者学习Rails。抱歉如果这个问题很明显..。
我有两种资源:
书籍与book_pages
一本书有几页,我在模型中建立了belongs_to和has_many的关联。在图书页控制器中,如何在此关联下创建新的book_page?我目前有:
class BookPagesController < ApplicationController
...
def new
@book_page = BookPage.new
end
end
...
另外,我需要如何设置相应的视图来创建一个新页面?
我试图在Server和Report之间建立一种关系。Server模型has_many :reports。
Server模型具有以下属性
id
game_server_id
名字
Report模型具有以下属性
id
game_server_id
安装
我面临的问题是如果我做以下事情
class Server < ActiveRecord::Base
has_many :reports
end
Server.first.reports
Rails将尝试根据server_id模型中的Report字段将服务器与其报表匹
我写了一个创业板,允许将谷歌电子表格转换成Rails模型。这个过程的顺序是创建所有模型,然后连接它们的关联,然后保存所有模型。它支持所有可用的关联类型,并且在每种情况下都支持一个,创建模型,建立关联,然后保存模型正确工作。例外情况如下:
我有一个简单的has_one, through关联(为了简洁起见省略了属性访问):
class Left < ActiveRecord::Base
has_many :middles, dependent: :destroy
has_many :rights, through: :middles
end
class Right < A
我一直在寻找一个好的答案,但实际上似乎找不到答案,所以我不得不贴出这个问题。
我使用Rails 4.0.1,有点初学者,我正在尝试实现两个模型,一个用户和一个事件。
我希望用户注册到我的网站加入多事件的能力,因此这些事件将有许多用户注册他们。
我必须同时使用has_many吗?我试过了,但当我使用rails控制台向用户添加事件时,它仍然无法识别它们。我创建了两个迁移和两个模型。
我使用的模型如下
class User < ActiveRecord::Base
has_many :events
end
class Event < ActiveRecord::Base
我正在创建一个referral模型,它将能够链接2个客户端,其中一个是引用的,另一个是引用的。我已经有了client模型,但我想知道如何正确地设置referral模型,以便我可以查询:
Client.find(x).referrals
# returns all referrals where referrer has the client's id
Client.find(x).referred_by
# returns client that referred this client
我有一个导航菜单提供程序,我正在尝试使用MenuItem对象将其转移到EF Code First (EF4,CPT5)。这更像是一种练习,目的是首先适应与EF Code建立不同的关系。
我的MenuItem有一个名为SubMenuItems的字段,它是MenuItems的集合。当我首先使用EF代码时(不修改类),为MenuItems创建的表格为父菜单项添加了一列。菜单将正确显示,但这会删除任何让菜单项出现在多个子菜单中的功能。什么是正确的方式告诉EF代码首先,我希望每个MenuItem是一个独立的项目,并创建另一个表链接菜单项的SubMenuItems到其他MenuItems?
public
我试图在用户和建议之间建立一对多的关系。一个用户可以有很多建议。
rails g model User
rails g model Advice user:references
我注意到这不会自动生成user.rb文件中的行user.rb。但是,在advice.rb文件中,行belongs_to :user是自动生成的。
在rails控制台中,我仍然能够为一个用户创建多个插件,而不会出现错误。
我的问题是,在has_many :advices文件中是否需要user.rb行?如果没有,那么为什么Rails指南推荐它呢?