问题标签 [attr-accessor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - 将方法命名为变量调用方法 Ruby
嗨,我是一个初学者。
我想我了解 attr_accessor 的工作原理(下)。而“setter”就是name=(name)
方法。而且我知道该方法等效于赋值:name = "john"
。因为“=”是一种接受参数并将该参数分配给调用它的任何对象的方法。(虽然我不明白如何将“名称”视为一个对象,因为它被分配给一个对象)
所以我的问题是:如何将调用方法的变量分配为方法名称?感觉好像错过了什么。。
ruby - 赋值符号如何工作 - Ruby
在 Ruby 中,如果我只是分配一个局部变量。
那是一种main.sound=("bang")
方法吗?如果是这样,该方法“sound =”在哪里以及如何定义?或者那个任务是如何工作的?如果没有,实际发生了什么?
我知道对于 setter 方法,您会说 x.sound=("bang")。并且您正在使用参数“bang”在对象“x”上调用方法“sound=”。并且您正在创建一个实例变量“声音”。
我可以想象这一切。但不是当您在“主”对象中分配变量时。据我所知,它不是 Object 类的实例变量......或者是吗?我很混乱。
ruby - attr_accessor 是否需要在 Ruby 中使用符号作为变量?
attr_accessor
我见过的每个 s 示例都使用符号 ( :var
) 作为变量。
这是使用的要求attr_accessor
吗?如果是,为什么?如果不是,为什么会如此普遍?
ruby - Ruby 2.1.0 在实例变量具有默认值后重新分配它
我在过去一个月内刚刚学习了 Ruby,并且正在使用 RSpec 提高我的 TDD 技能。
我正在尝试通过以下测试:
这是我的代码:
我基本上正在尝试执行以下操作:
但是,在我尝试将颜色重新分配为绿色后,它仍然输出“黑色”,请帮忙。
谢谢。
ruby - attr_accessor 是如何知道 :player = @player 的?
这是代码:
现在,如果我写:
它显然会吐出来Robert
。
我对 Ruby 有点陌生,所以如果这个问题对你们所有人来说都是显而易见的,请原谅我。我还在努力把头绕在它周围。我正在学习“实例”、“类”和全局变量,我的问题是:Ruby 如何知道:player
上面的代码中指的是@player
? 为什么不写代码:@player
呢?
这有任何意义吗?
ruby - 为什么 attr_accessor 将我的方法设为私有?
我想在一个类上动态定义 attr_accessor ,但它使生成的方法成为私有的。如果不使用正常的类语法或自己编写方法,如何使以下内容不引发错误?
ruby-on-rails - Rails 4 attr_accessor doesn't work across multiple methods
My model looks like this:
I want to measure the elapsed time, and self.start_time
exists within the start_time
method. However, in my elapsed_time
method, self.start_time
is nil. Why is that?
I am using rails 4.1.0 and ruby 2.0.0.
ruby-on-rails - 控制器中的 attr_accessor 用于存储权限
我attr_accessor
在我的控制器中使用来存储在 applicationController 中定义的方法中设置的权限,但我遇到了问题。如果我这样做:
然后rails声称perms=
不存在
如果我做:
@perms
在任何子控制器check_permissions
中nil
,我检查了哪些实例方法可用:print self.instance_variables
但@perms
没有出现;可能是因为@perms
正在为类实例设置而不是为调用操作时创建的控制器的对象实例
这是怎么回事?导轨不喜欢attr_accessor
控制器吗?我怎样才能让它工作,这样我就可以在类中设置权限,并让该类的任何对象可以访问它们,这样我就可以像这样设置它们:
我必须使用self.set_permissions
,否则当我尝试设置它们时它声称 set_permissions 不存在(因为它是对象方法而不是类方法)
编辑:为澄清起见,我希望在控制器中设置权限(但每个控制器都不同);对于该控制器的任何实例(即为操作创建的对象实例)或从该控制器继承的任何控制器(例如,节点控制器从 api 控制器继承,因此使用相同的权限)都是相同的,除非它是在该继承的控制器中单独定义的(令牌控制器继承自 api 控制器,但需要无权限,因此一个人实际上可以在不需要权限的情况下获得令牌)。
ruby-on-rails - attr_accessor vs 属性一个失败另一个
我在我的 rails 应用程序中使用她的gem 从 Web 服务后端而不是数据库获取数据。尽管我相信这个问题与宝石并不完全相关。
我的模型正在使用ActiveModel
我的控制器是
我有这样的表格
现在这里attr_accessor :name, :type
需要模型内部的表单才能正常运行或抛出此错误
如果我attr_accessor
在模型中添加,@merchant.attributes
则返回{}
。
这导致 gem 向服务器发送空白请求,因为 gem 用于attributes
构建请求。我检查了宝石的来源。
如果我不添加attr_accessor
,那么一切正常,除了表单抛出错误。
有什么方法可以解决这个错误。老实说,我不清楚如何attributes
工作。
ruby-on-rails - 当我将数据放在 :notes 和 :place 上时,验证仍然失败
我认为,这段代码是正确的,但我不知道会发生什么?这是我的代码:
注册.rb:
我的控制器,
问题是,当我将数据放在:notes
and上:place
时,验证仍然失败。