问题标签 [nomethoderror]
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 - MacRuby,使用 Sequel 时出错
我刚刚使用命令安装了Sequelsudo macgem install sequel
。它告诉我 sequel-3.18.0 已成功安装。
当我启动 xcode 并启动一个新的MacRuby应用程序时,它会为单元测试设置一个目标。我已经修改stub_test.rb
了以下两行:
尝试运行单元测试时,出现以下错误:
没有这两个require
语句,测试运行良好。
我试图用谷歌搜索,并在 macruby.org 上找到了以下票:
Ticket #930 SIGABRT in MacRuby 0.7 with Sequel + SQLite3-Ruby gem [...] 修复 Sequel 中的 Kernel#require 问题后,我可以毫无问题地加载 Sequel 和 SQLite3。[...] 所需的库是 Sequel(为 Kernel.require 打补丁,而不是 Sequel#self.require 中的 super)和 SQLite3-Ruby。[...]
我在其他任何地方都找不到有关此补丁的任何信息,但是...
有什么已知问题吗?此错误消息是什么意思,以及如何使其工作?
ruby-on-rails - fbgraph:未定义的方法`encode_json'为真:TrueClass
我的代码:
我去了/oauth/start/
并成功登录并允许我的应用程序。之后,Facebook 将我重定向回我的应用程序,这给出了以下错误:
OauthController#callback 中的 NoMethodError
我们都讨厌错误,我也是。我该如何解决这个问题?谢谢。
ruby-on-rails - Rspec 错误:end.should 更改的未定义方法“更改”(模型,:计数)
这是完成 Ruby on Rails 教程后的后续内容。
我花了很长时间尝试混合和匹配宝石以找到解决方案,因为我真的不知道 Rspec 是如何在识别“变化”时遇到困难的。
错误:/spec/requests/athletes_spec.rb:20:in
':未定义方法中的块(3级)change' for #<Class:0x00000100e715e8> (NoMethodError)
我喜欢 TDD 的概念,但似乎有一半的时间我试图让测试环境正常工作。谁能告诉我哪里出错了?
进一步编辑:
这是我的 Gemfile:
ruby-on-rails - Rails 错误“NoMethodError” - 刚开始使用 Rails
希望这是一个非常容易解决的问题,因为我刚开始使用 Rails。
我有一个数据库(产品),其中包含许多产品属性,包括品牌、颜色和产品类型。
我目前有一个索引页面(在 productfinder 目录中),它能够提供数据库中产品的摘要。我在 index.html.erb 中使用以下代码:
在 productfinder_controller.rb 我有:
到目前为止,一切似乎都在正常工作
现在我想在我的索引页面上添加 3 个按钮,这些按钮将使用户能够重新计算产品子集的 distinctbrands 和 distinctcolours - 匹配 product_type = "new" 或 "used"。第三个按钮将对应于根本没有被过滤的结果(即最初加载索引页面时)。
在上一个问题中,我被建议添加以下代码:在 productfinder_controller 中:
在 Product.rb 中:
在 index.html.erb 中
现在运行应用程序时,我得到一个 NoMethodError - ProductFinder#Index(尝试执行 nil.each 时,该错误与 <% @distinctbrands.each do |distinctbrand| %> 相关联
我想知道问题是否出在定义 @distinctbrands 和 @distinctcolours 的函数上,因为现在已经过滤了数据库,但是对于以下两种情况,我都会遇到相同的错误:
和
请问有人可以为我提供一个可能的解决方案吗?问题是否与 @products 未在 def 索引中定义有关?如果是这样,如何做到这一点?
非常感谢您的时间
ruby-on-rails - rails中的一对多嵌套属性
这不是一个问题,但希望有人可以从中受益。
当您尝试创建或修改一对多嵌套关联时,请确保您正在传递一个数组。如果你得到
NoMethodError(未定义的方法 `[]' for...
并且您正在使用一对多的嵌套关联,这可能是您的问题。在搜索此错误时,我没有找到对此的解释,因此也许这将有助于加快其他人的开发。
例如,我有一个 Person 模型
为了创建一个新人和关联的 person_image,我执行以下操作。
注意 {:image=>person_image} 周围的 []。如果你有一对多,你必须有这个。因此以下内容不起作用并产生未定义的方法“[]”错误。
另外,在我看来,我必须像这样命名我的输入
如果没有 [0],它就无法工作。
我是 Rails 的新手。我希望这对其他初学者有所帮助,如果有人有更好的解释或更有效的方法来做到这一点,我将不胜感激您的评论。
有关详细信息,请参阅Rails API 上的嵌套属性
ruby-on-rails - NoMethodError,nil 的未定义方法“名称”:NilClass -rails 3
我在 SitesController#index undefined method `subdomain' for nil:NilClass 中得到 NoMethodError
我有一个 Accounts 表,其中有一个“子域”字段和一个 Site 模型,它是 Account Model 的子类,即:
结尾
并且在 applications_controller 中定义了一个 current_account 方法,如下所示
结尾
哪个调用 is_root_domain?下面的方法:
结尾
我还将 current_account 方法更改为此但得到了同样的错误:
在上述任何一种情况下,我都会在 SitesController#index 上得到 nil:NilClass 错误的未定义方法“子域”。在尝试访问 url 时如下所示:
结尾
我已经尝试了各种我所知道的与无方法错误作斗争的技巧,比如添加“attr_ccessible”和一个初始化方法,但似乎没有任何效果。我还将帐户表字段从“子域”更改为“名称”,但没有成功。任何指南将不胜感激。
ruby-on-rails - Rails:错误“NoMethodError: undefined method `<' for nil:NilClass”,缺少一些宝石?
这是模型类类 Item::Item < ActiveRecord::Base validates_presence_of :start_date, :end_date, :product_id validate :validate_start_and_end_date
这是rails控制台的日志
ruby - Ruby 1.8.7 中的 NoMethodError
我已经开始开发一个名为 Shapado (http://shapado.com) 的应用程序,该应用程序在 Ruby 上运行,后台有一个 mongo 数据库。当我尝试向数据库添加一些数据时出现以下错误。我附上了我认为可能是来源的所有相关文件。
错误
QuestionsController.rb 中的 tags_for_autocomplete 方法
/var/lib/gems/1.8/gems/mongo_mapper-0.8.6/lib/mongo_mapper/plugins/associations/proxy.rb:109
ruby - /user/profile 处的 NoMethodError - nil:NilClass 的未定义方法“更新” - 使用 DataMapper 的 Sinatra 应用程序
您好,我在使用 Sinatra 应用程序时遇到旋转错误。我正在使用 DataMapper 1.1 和 Ruby 1.9.2-p136。在在这里寻求帮助之前,我已经筋疲力尽地进行了搜索和黑客攻击。
我质疑/尝试过的事情:如果 DataMapper #update 不创建新记录(如果不存在),如何创建新用户?所以我尝试了 first_or_create 并没有解决问题。这是我添加了除非创建。我已经调试了 3 天,我绝对愿意进行重构。事实上,我肯定会进行重构,但我想先解决这个问题,以便从错误中吸取教训。具体来说,我不想使用“除非”代码,而且我觉得有更好的方法来编写 /after_login 部分。
我一直在 irc #datamapper #sinatra #ruby 上露营——尽管有很多尝试,但还没有运气。
最后,原始代码与 DataMapper 0.9 一起使用,这让我认为这是一个 DM 问题,但我认为现在情况可能并非如此。
任何帮助是极大的赞赏!
要点:
git://gist.github.com/897342.git -- ruby app 文件 -- 添加了unless create(感觉这个有很多问题)
git://gist.github.com/895532.git -- ruby 应用程序文件 -- 在被黑之前尝试添加创建调用
git://gist.github.com/895394.git -- user.rb 文件
git://gist.github.com/895391.git -- 错误回溯
=== 更新:经过数小时的代码争论,以及来自 irc 组 #datamapper #sinatra 和 #ruby 的巨大帮助!感谢所有帮助,尤其是 Dkubb!我很高兴地报告我已经清除了 NoMethodErrors,现在正在处理其他一些问题,主要是知道我的所有代码到底在做什么,更忠实的测试,以及一般的整体重构。
我会继续更新这个给有兴趣的人。
一般的解决方法是将我的方法和类分开,这样我就知道调用了什么、为什么以及如何调用。特别是@user 引起了很多问题。所以 Sinatra 的错误是真实的。;-)