问题标签 [nameerror]
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 - 将 OpenStruct 与 ERB 一起使用时出现问题
编辑:忘记包含我的环境信息... Win7x64,RubyInstaller Ruby v1.9.1-p378
编辑 2:刚刚更新到 v1.9.1,补丁 429,仍然出现同样的错误。
编辑 3:在 Ruby v1.8.7 补丁 249 中运行相同的代码,工作正常。所以显然是 v1.9.1 打破了它。
我是使用 ERB 的新手,我能找到的样本是......嗯......不太有用......在 ERB 上玩了大约一个小时后,我得到了一些基本的例子(终于),但我有不知道为什么这不起作用...
此代码产生以下错误:
为什么它在看main:Object
绑定?我告诉它通过传入来使用 OpenStruct 中的绑定vars_binding
有人可以告诉我为什么它不起作用,并帮助我让它起作用吗?
python - 从外部模块调用类会导致 NameError,在 IDLE 中它工作正常
我在名为 code_database.py 的模块中有以下代码
在空闲时,类定义的方法工作正常:
但是,如果我从外部程序调用模块并尝试调用方法,它们会引发 NameError:
在终端中导致此问题:
ruby - ruby: irb 给出 NameError 试图使用 mechanize gem (ubuntu)
在我的 ubuntu 机器上,当我尝试使用 mechanize gem 时,irb (ruby) 会给出 NameError:
gem env 显示了这一点:
gem list 显示它已安装:
它在文件系统的两个路径中:
RubyGems 是最新的:
我有一个最新的红宝石:
这是我拥有的 ubuntu gems 包(请注意,我安装了 rubygems-update 并运行了 update_rubygems):
python - Python 导入模块导致 NameError
我遇到了模块导入问题。
在 ubuntu 10.10 上使用 python 2.6
我在http://www.jejik.com/articles/2007/02/a_simple_unix_linux_daemon_in_python/有一个子类化守护进程的类。我创建了一个 python 包,其中包含一个模块,该模块包含从 django 项目中导入一些模型的代码。该代码在从类中使用时有效,而不是对守护程序进行子类化。结构看起来像:
ItemRepository 代码:
守护程序代码(在 /usr/local/bin/testdaemon.py 中):
我得到的错误是“NameError:未定义全局名称'my_module'”它通过了导入,但在尝试调用对象上的方法时失败。我假设它与 sys.path / PYTHONPATH 有关,但我知道我的 django 项目在路径上,因为我已经打印出来了。到目前为止,python 文档或 Learning Python 中没有任何帮助。有没有人有任何见解或知道对模块导入的良好参考?
更新:
现在我试图简化问题以使其更容易理解。现在我有一个看起来像这样的目录结构:
我已将 /etc/bash.bashrc 中的 $PYTHONPATH 变量设置为“/home/username/django”。
在 testdaemon.py 文件中,导入看起来像:
但现在我得到一个 ImportError:没有名为“someproj”的模块。所以我附加了路径。
现在 ImportError 说:没有名为“web”的模块。这是回溯:
因此,从我尝试添加的早期评论开始:
但这没有帮助。所以我创建了一个非常简单的文件:
这行得通!这真的只会让我更加困惑。所以现在我在想也许它与守护进程有关。它使用 os.fork() 并且我不确定路径是否仍然设置。这就是我在 /etc/bash.bashrc 文件中设置 $PYTHONPATH 变量的原因。
还有更多见解吗?我真的需要守护进程,我没有太多选择,因为我需要一个长时间运行的进程。
python - Python:NameError:未定义全局名称“foobar”
我写了以下课程:
逻辑是荒谬的 - 忽略它。我想要做的是从另一个实例方法调用一个实例方法 - 我得到一个NameError
. 我最初认为这是由于在定义之前foo()
调用foobar()
- 但是在脚本中切换函数定义的顺序没有任何区别。
有没有人是什么导致了这个错误,以及如何解决它?
python - 定义python多级包中的NameError
我正在尝试创建一个简单的多级包:
叶.py:
test_levels.py:
直接运行 leaf.py 可以正常工作,但运行 test_levels.py 会返回下面的输出,而我原本期望没有输出:
有人可以指出我做错了什么吗?
validation - Rails3:嵌套模型 - 子 validates_with 方法导致“NameError - 未初始化的常量 [parent]::[child]”
考虑以下父/子关系,其中 Parent 与 Kids 为 1..n(仅此处的相关内容)...
Kid 模型上的 validates_presence_of 方法在验证失败时按预期工作,Item is expected
根据提供的自定义消息属性生成最终字符串。
但是,如果尝试validates_with
,则...
...RailsNameError - uninitialized constant Parent::Kid
不仅在尝试创建(初始持久)用户数据之后返回错误,甚至在尝试构建初始表单时也会返回错误。来自控制器的相关位:
该错误表明在模型名称(可能还有字段名称?)解析错误消息构造期间的某个地方,发生了冲突。但是为什么某些方法会发生这种情况,validates_*
而其他方法则不会呢?
还有人用这个撞墙吗?为了完成这项工作,这里是否需要一些我遗漏的仪式,特别是关于模型名称?
python - Python:无明显原因的 NameError?
我在 player() 中返回了损失,所以我不知道为什么我不断收到这个 NameError。
ruby-on-rails - Rails 为所有命令行方法(例如 generate 或 rake)提供 NameError
我是 Rails 的初学者,过去几天我一直试图找出世界上哪里出了问题,但绝对没有运气。我到处寻找,但一无所获。基本上,当我运行任何类型的命令行方法时,我都会得到一个 NameError。我已经尝试在不同的项目目录中运行它,以及曾经工作的。看来铁轨刚刚坏了……
我正在使用 NetBeans 6.9.1 运行 Win7-32bit 来编辑文件,并使用 cmd.exe 来运行 rails 控制台。
一切都正常工作了大约两个星期,然后突然发生了这种情况。这里有一些例子:
rails 生成模型:
rails 生成迁移:
耙分贝:迁移:
任何形式的帮助将不胜感激。谢谢!
python - python名称错误:名称'' 没有定义(但它是!)
注:已解决。原来我正在导入同一模块的先前版本。
在 StackOverflow 上很容易找到类似的主题,其中有人遇到了 NameError。但是大多数问题都涉及特定的模块,解决方案通常是更新模块。
就我而言,我试图从我自己编写的模块中导入一个函数。该模块名为 InfraPy,它肯定在 sys.path 上。InfraPy 中的一个特定函数(称为 listToText)返回 NameError,但仅当我尝试将其导入另一个脚本时。在 InfraPy 下if __name__=='__main__':
,listToText 函数工作得很好。从 InfraPy 我可以毫无问题地导入其他功能。在我尝试使用 listToText 函数之前,包含from InfraPy import *
在我的脚本中不会返回任何错误。
这怎么会发生?
导入一个特定函数如何返回 NameError,而导入同一模块中的所有其他函数可以正常工作?
在 MacOSX 10.6 上使用 python 2.6,在 Windows 7 上运行脚本也遇到相同的错误,使用 IronPython 2.6 for .NET 4.0
谢谢。
如果您认为有其他细节有助于解决这个问题,我很乐意提供。
根据要求,这是 InfraPy 内部的函数定义:
这个函数在上面和外面定义if __name__=='__main__':
我尝试根据脚本移动 InfraPy。最莫名其妙的情况是,当 InfraPy与脚本在同一个文件夹中,并且我使用 导入from InfraPy import listToText
时,我收到此错误:NameError: name listToText is not defined
. 同样,其他函数导入正常,它们都是if __name__=='__main__':
在 InfraPy 之外定义的。