对象不支持此属性或方法 Rails Windows 64 位
Object doesn't support this property or method Rails Windows 64bit
我在Surface Pro 3上安装了Rails,并在尝试查看页面后遇到了此错误。我已经尝试了几个建议,例如使用 libv8 安装 rubyracer,但没有帮助。
类型错误: 对象不支持此属性或方法(在 c:/RailsInstaller/Ruby2.0.0/lib/ruby/gems/2.0.0/gems/turbolinks-2.5.3/lib/assets/javascripts/turbolinks.js.coffee)
这是我的宝石文件:
source 'http://rubygems.org'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.1.8'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.3'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .js.coffee assets and views
gem 'coffee-rails', '~> 4.0.0'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
gem 'therubyracer', platforms: :ruby
# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.0'
# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', '~> 0.4.0', group: :doc
gem 'libv8', '~> 3.16.14.7'
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'
# Use unicorn as the app server
# gem 'unicorn'
# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development
# Use debugger
# gem 'debugger', group: [:development, :test]
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin]
gem 'twitter-bootstrap-rails', :git => 'git://github.com/seyhunak/twitter-bootstrap-rails.git'
gem 'font-awesome-rails'
gem 'simple_form'
gem 'devise'
Coffee script 1.9.0 不能很好地与 Windows 配合使用。 在我的 Windows 7 机器上,使用 1.8.0 版解决了这个问题。
添加到宝石文件
gem 'coffee-script-source', '1.8.0'
然后,运行
bundle update coffee-script-source
并重新启动服务器(如果需要)
有同样的问题(对所有事情进行"hello world"应用程序......),但无法让 coffeescript 1.8.0 修复程序正常工作。 在这里找到解决方案:http://mech.xyz/how-to-fix-ruby-on-rails-turbolinks-js-coffee-error-windows/
步骤:
- 导航到 ''app''views''layouts''application.html.erb
- 将第 6 行从
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
自
<%= javascript_include_tag '**defaults**', 'data-turbolinks-track' => true %>
这样做了,现在工作正常。
与普遍的看法相反,Rails并不像他们声称的那样是跨平台兼容的。如果是这样,它可以在窗户上工作,开箱即用。 像你一样,我已经尝试了所有可用的选项。
这是使用 Ruby 2.1.5p273/Rails 4.2.0 解决的
。我将execjs更改为将UTF-8与jscript一起使用,没有效果。这是通过编辑 C:''RailsInstaller''Ruby2.1.0''lib''ruby''gems''2.1.0''gems''execjs-2.2.2''lib''execjs''runtimes.rb 将 JScript = 块更改为以下内容来完成的。
JScript = ExternalRuntime.new(
name: "JScript",
command: "cscript //E:jscript //Nologo",
runner_path: ExecJS.root + "/support/jscript_runner.js",
encoding: 'UTF-8' # CScript with //U returns UTF-16LE
)
我还尝试安装therubyracer,这会导致libv8依赖项无法编译的问题。我将我的python 2.7安装添加到Windows系统路径中,并安装了libv8。然后它说安装了libv8,但是当我尝试安装therubyracer时,它说找不到libv8。我卸载了libv8并重试,它说libv8无法编译。这足以让我确定therubyracer无法在Windows上运行,所以我将其从Gemfile中注释掉,将python 2.7留在Windows系统路径上。
我更新了咖啡脚本源代码,通过将以下内容添加到我的 Gemfile 中
gem 'coffee-script-source', '1.9.0'
将咖啡脚本源添加到我的 Gemfile 后,我运行了 gem 更新咖啡脚本源,这也没有解决问题。
然后我安装了node.js,这工作了5分钟,直到我生成一个新的控制器,它又坏了。
注意:安装 node 后.js您需要打开一个新的命令提示符,以获取在安装 node.js 时设置的系统路径更新。
最后解决这个问题的是打开应用程序''资产''javascripts''application.js文件并删除最后一行
/= require_tree .
最后运行以下命令以确保咖啡脚本正确安装在 Node 中.js
npm install -g coffee-script
由64位Windows和CoffeeScript gem之间的不兼容引起的。
这确实是一个CoffeeScript问题。它似乎只影响64位Windows计算机。32位Windows很好。
默认情况下,CoffeeScript 在 Rails 中出现在两个位置:
- 默认的脚手架生成器创建一个咖啡脚本文件。
- Turbolinks是CoffeeScript。
解决此问题的最简单方法是简单地删除CoffeeScript。反正你可能不需要它。
- 删除应用程序/资产/javascripts 中生成的 coffeeScript 文件。
- 从 gem 文件中删除涡轮链接 Gem,然后捆绑安装。
- 编辑资产/样式表/应用程序.js删除涡轮链接包含。
我发现你的错误看起来像这样ExecJS::RuntimeError on Windows 试图遵循 rubytutorial
我通过取消注释"资产''javascripts''应用程序.js中的行//= require_tree来修复我的系统
= require_tree
- 在Windows 10中自动执行例行程序(主要与浏览器交互)
- 如何从rails中的代码中删除新行( )
- Rails File_field最大堆栈大小
- angularjs+rails应用程序中未显示模板
- Rails/JSON:如何将JSON用于jquery UI自动完成表单
- Windows形成web浏览器控件和Javascript更改的DOM
- Windows 8固定的网站互动程序
- Rails 3.2 js.erb文件转义js
- Rails-JQueryUIAutcomplete和AJAX不工作,可以't连接到数据库
- Jquery:代码在rails中的页面加载时未执行
- Rails操作只调用一次,但我在ajax中每秒钟都调用一次
- Rails/Javascript链接到用于切换多个元素的函数
- 在Rails中更新Div,而不更改更新请求后的视图
- 如何添加CSS&JavaScript进入Windows窗体应用程序C#.net
- Jquery append oly获取循环Rails中的最后一个elemen
- 通过rails中的Ajax在控制器B的每个视图中渲染控制器a的视图
- 使用主干网和rails的静态页面路由
- 将JavaScript变量保存到Rails模型
- 对象不支持此属性或方法 Rails Windows 64 位
- Ruby on Rails与Windows的部署问题