Ruby on rails 如何修复rails控制台中的名称错误
我试着在一个twitter克隆上工作,当我运行rails控制台并运行UserRuby on rails 如何修复rails控制台中的名称错误,ruby-on-rails,ruby,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 4,我试着在一个twitter克隆上工作,当我运行rails控制台并运行User irb(main):001:0> User.all Traceback (most recent call last): 3: from (irb):1 2: from app/models/user.rb:1:in `<main>' 1: from app/models/user.rb:5:in `<class:User>' NameErr
irb(main):001:0> User.all
Traceback (most recent call last):
3: from (irb):1
2: from app/models/user.rb:1:in `<main>'
1: from app/models/user.rb:5:in `<class:User>'
NameError (undefined local variable or method `“Relationship”' for User (call 'User.connection' to establish a connection):Class)
Did you mean? relation
irb(main):001:0>User.all
回溯(最近一次呼叫最后一次):
3:来自(irb):1
2:来自app/models/user.rb:1:in`'
1:from-app/models/user.rb:5:in`'
NameError(用户的未定义局部变量或方法“关系”(调用“User.connection”建立连接):类)
你是说?关系
这是我的user.rb代码
class User < ApplicationRecord
has_many :tweets
has_many :followers, :class_name => “Relationship”, :foreign_key => “user_id”
has_many :following, :class_name => “Relationship”, :foreign_key => “follower_id”
end
class用户“关系”,:foreign\u key=>“用户id”
有多个:following、:class\u name=>“Relationship”、:foreign\u key=>“follower\u id”
结束
请问我该如何修正我的错误
如果您已经完全粘贴了正在运行的代码,那么就有一个相当微妙的问题:引号的类型。此处使用的引号:
“Relationship”
实际上与Ruby所期望的不同:
"Relationship"
如果粘贴教程中的代码,可能会出现此问题。另一种类型的引号通常用于网页。如果您粘贴的代码与正在运行的代码完全相同,那么就存在一个相当微妙的问题:引号的类型。此处使用的引号:
“Relationship”
实际上与Ruby所期望的不同:
"Relationship"
如果粘贴教程中的代码,可能会出现此问题。这种其他类型的引号通常用于网页。您在models文件夹中创建relationship.rb文件了吗?您重新启动web服务器以便重新加载模型了吗?您必须在
user.rb
中更改引号,将“关系”
替换为“关系”
,“用户id”
替换为“用户id”
,“关注者id”
替换为“关注者id”
。您已经在models文件夹中创建了relationship.rb文件了吗?您重新启动web服务器以便重新加载模型了吗?您必须在user.rb
中更改引号,将中的“Relationship”
替换为“Relationship”
,中的“user\u id”
替换为“user\u id”
,将中的“follower\u id”
替换为“follower\u id”
。