【问题标题】:Michael Hartl's Ruby on Rails Tutorial, toy_app user tourMichael Hartl 的 Ruby on Rails 教程,toy_app 用户导览
【发布时间】:2016-01-16 14:31:30
【问题描述】:

我正在研究 Michael Hartl 的 Ruby on Rails 教程,并且所有步骤都按预期工作,直到第 2.2.1 节开始。

第一句说访问根目录会显示默认的 Rails 页面。但事实并非如此;它显示“hello world”,因为第 2.1 节中的教程让我们在部署到 Heroku 之前将根定义为 application#hello。如果我去http://localhost:3000/users/,我会得到一个错误:

Users#index 中的 ExecJS::ProgramError

显示 C:/Users/dfretz/dfretz/Coursera/Rails_tutorial/toy_app/app/views/layouts/application.html.erb 第 6 行在哪里提出:

TypeError: 对象不支持此属性或方法

由于这是脚手架生成的代码,我不知道如何解决这个问题,甚至不知道您需要查看哪些文件才能提供帮助。

谁能告诉我我做错了什么?

【问题讨论】:

  • 这是一个 Windows 问题,请参阅此 QA stackoverflow.com/questions/28312460/…
  • 谢谢你,它现在正在工作。解决方案在@Tachyons 提供的链接中。在 \app\views\layouts\application.html.erb 文件中,将第 6 行从 true %> 更改为 defaults ', 'data-turbolinks-track' => true %> 修复了它。作为记录,我在 Windows 7 上运行。谢谢!

标签: ruby-on-rails ruby-on-rails-3


【解决方案1】:

由于您是新手,以下是调试它的方法:


这是你的错误:

C:/Users/dfretz/dfretz/Coursera/Rails_tutorial/toy_app/app/views/layouts/application.html.erb 其中第 6 行

这为您提供了要查看的特定文件和要观察的行。

根据我的经验,application.html.erb第 6 行 将位于应用程序的 <meta> 数据中;我有一种感觉,它将是 Javascript 文件。

--

其实我们也可以从错误中看出:

ExecJS::ProgramError

这基本上表明我们正在处理一个 JS 问题。

你会遇到很多 JS 问题;这似乎是一个根深蒂固的问题(可能是 Windows 8)...ExecJS::RuntimeError in Users#index (RoR)

底线是我认为你需要安装 NodeJS,或者分配另一个 JS 运行时。当我遇到问题时,我刚刚安装了 NodeJS...

您可能需要查看此资源并按照以下步骤操作:How can I use Nodejs with Windows 7?

【讨论】:

    猜你喜欢
    • 2016-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多