【发布时间】:2014-07-26 17:25:29
【问题描述】:
我正在尝试学习 Hartl 的 Rails 教程。在完成第 3.2.1 章时,我在尝试时遇到了以下两个错误
bundle exec rspec spec/requests/static_pages_spec.rb
两者都是语法错误:
I:/Programs/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/rspec-core-3.0.3/lib/rspec/core/configuration.rb:1057:in `load' : C:/Users/Anastasia/RubymineProjects/sample_app/spec/requests/static_pages_spec.rb:3: 语法错误,意外的keyword_do_block (SyntaxError)
C:/Users/Anastasia/RubymineProjects/sample_app/spec/requests/static_pages_spec.rb:12:语法错误,意外keyword_end,期待$end
我已经查看了这两个文件中的每一个,但没有看到实际的语法错误:
static_pages_spec.rb 包含以下代码:
require 'spec_helper'
RSpec.describe "StaticPages", do
describe "Home page" do
it "should have the content 'Sample App'" do
visit '/static_pages/home'
expect(page).to have_content('Sample App')
end
end
end
所有“做”似乎都有一个匹配的“结束”。
spec_helper.rb 包含以下代码:
RSpec.configure do |config|
config.include Capybara: :DSL
end
再次,“做”和“结束”似乎匹配。
注意:我对编码非常是新手。我以前的经验是 html/css 相关的。在阅读本教程时,我目前正在免费试用 Ruby Mine,我不禁想知道是否最好只使用像 SublimeText 这样的文本编辑器重新开始,因为使用 RM 意味着我m 不仅努力学习 Ruby 和 Rails,还学习 RM。 RM 有一些我非常喜欢的地方(我天生就是一个视觉型的人,所以拥有更具视觉吸引力的东西很好,但我也喜欢 gem 安装界面,它不仅可以轻松安装 gem,还可以阅读他们的文档)。使用 RM 的另一个缺点是教程和 RM 捆绑的版本(Ruby 1.9.3 与 2.0.0 等)之间的版本差异,这导致我选择在 gemfiles 中省略版本列表以避免产生奇怪的冲突(我认为这将是一个问题可能是错误的,但在我看来这是合乎逻辑的)。
Capybara gem 已安装并位于 gemfile 中,所以我不认为这是问题所在(但可能是错误的)。我确定我只是错过了一些非常简单的东西,但我一辈子都看不到它是什么。
任何建议或帮助将不胜感激!
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 rspec railstutorial.org