社交网络——主题是Rails中的保留词



我在Rails 3.2应用程序中建立了一个名为"Subject"的模型。我使用了下面的scaffold命令。

rails g scaffold Subject subject singular:boolean gender:integer subject_masculine subject_feminine subject_neuter language:references --skip-stylesheets

脚手架几乎运行到最后,但随后给出了一个关于helper的神秘错误:

名称'SubjectsHelper'要么已经在您的应用程序中使用,要么被Ruby on Rails保留。

我试过把脚手架倒过来重建。最后,我只是建立了表格,它似乎工作得很好。没有helpers/subjects_helper。b . b .文件,但是我不期望这个特定的模型需要一个帮助器。

我无法在任何保留词列表中找到subject,但这本身就是一个问题。另一个SO的帖子已经提出了这个问题。

rails中的保留字列表*3*

为什么我得到这个错误,我可以忽略它吗?

编辑

我的Gemfile被请求

source 'https://rubygems.org'
gem 'rails', '3.2.8'
gem 'thin'
gem 'sinatra'
gem 'pg'
gem 'simple_form'
gem "nested_form"
gem 'thinking-sphinx'
gem 'devise'
gem 'haml-rails'
gem 'ruby_parser'
gem 'html2haml'
gem 'best_in_place'
gem 'carrierwave'
gem 'fog'
gem 'seed_dump'
gem 'bluecloth'
gem 'redcarpet'
group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'
  gem 'prototype-rails'
  gem 'uglifier', '>= 1.0.3'
  gem 'twitter-bootstrap-rails'
  gem 'therubyracer'
  gem 'less-rails'
  gem 'jquery-datatables-rails'
end
gem 'jquery-rails'
gem 'social_stream'
gem 'rails-footnotes', '>= 3.7.5.rc4', :group => :development
group :development do
  gem 'rails-erd'
  gem 'quiet_assets'
end
gem 'vestal_versions', :git => "git://github.com/futurechimp/vestal_versions.git"
gem 'diffy'
gem 'diffrent'

EDIT2

根据Philip的建议,我运行了模块。constants命令。在输出中,有两个"主题"值:
:SubjectsHelper
:Subject

我检查了几次没有助手,所以我决定添加一个。我创建了helpers/subjects_helper。rb文件,代码如下:

module SubjectsHelper
end

Rails现在已经重新启动OK。我还是不明白发生了什么。

正如您所说,SubjectsHelper已经由Social Stream提供。看到:

https://github.com/ging/social_stream/blob/master/base/app/helpers/subjects_helper.rb

您的解决方案正在工作,因为您正在重新打开模块,这在Ruby中是有效的操作。

我找到了。我正在使用Social Stream gem,它在路由中有一个主题。

subject_lrdd        /subjects/lrdd/:id(.:format)

一定是埋在发动机的某个地方。

相关内容

  • 没有找到相关文章

最新更新