加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails-3 – spree install undefined方法mass_assignmen

发布时间:2020-12-17 02:17:08 所属栏目:百科 来源:网络整理
导读:我在问题列表中查看了这个问题,但没有任何帮助. 这是我在stackoverflow中的第一个问题,所以如果我做错了,请接受我的道歉.我还有很多英语需要改进. 我正在按照github说明安装Spree $gem install spree$rails new my_store$spree install my_store 当我收到这
我在问题列表中查看了这个问题,但没有任何帮助.
这是我在stackoverflow中的第一个问题,所以如果我做错了,请接受我的道歉.我还有很多英语需要改进.

我正在按照github说明安装Spree

$gem install spree
$rails new my_store
$spree install my_store

当我收到这条消息时

Admin Password [spree123] 
gemfile  spree
gemfile  spree_usa_epay
gemfile  spree_skrill
     run  bundle install from "./my_store"
git://github.com/spree/spree_usa_epay.git (at 0cb57b4) is not checked out. Please run `bundle install`
precompiling  assets
git://github.com/spree/spree_usa_epay.git (at 0cb57b4) is not checked out. Please run `bundle install`


好吧,正如指南建议的那样,在循环依赖问题的情况下:

$gem install spree_cmd

$spree install my_store -A

gemfile  spree
gemfile  spree_usa_epay
gemfile  spree_skrill
     run  bundle install from "./my_store"
git://github.com/spree/spree_usa_epay.git (at 0cb57b4) is not checked out. Please run `bundle install`
precompiling  assets
git://github.com/spree/spree_usa_epay.git (at 0cb57b4) is not checked out. Please run `bundle install`

我将目录更改为应用程序并运行命令:

$cd my_store

$bundle install

我收到以下错误

Bundler could not find compatible versions for gem "rails":
In Gemfile:
spree_usa_epay (>= 0) ruby depends on
  rails (<= 3.1.3,>= 3.1.1) ruby

rails (3.2.1)

在此之后,我更改了gem文件以使用rails 3.1.3和coffeescript gems,并再次重复整个过程,我得到了这个.

Users/Snake/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-  3.1.3/lib/active_record/base.rb:1088:in `method_missing': undefined method  `mass_assignment_sanitizer=' for ActiveRecord::Base:Class (NoMethodError)
from /Users/Snake/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-3.1.3/lib/active_record/railtie.rb:59:in `block (3 levels) in <class:Railtie>'

它认为它可能是一个版本的rails狂欢,但我不知道是开始.

以前有人有这个问题吗?

我运行的是Mac OS X 10.5.8

轨道3.2.1

ruby 1.9.3p0(2011-10-30修订版33570)[i386-darwin9.8.0]

ImageMagick @ 6.7.4-6_0 q16

解决方法

由于@Anatoly Ruchka建议问题是使用rails 3.2.1,所以我切换到3.1.3.

这就是我所做的,我找到了@vonconrad的帖子,在那里他解释了如何在不触及安装的情况下创建铁路项目.

1)我为我的项目创建了一个目录文件夹:

$mkdir old_rails313
$cd old_rails313
$touch gemfile
$nano gemfile

2)
我粘贴了一个gemfile定义,指定你提到我想要的rails版本,所以它看起来像这样

source 'http://rubygems.org'
gem 'rails','3.1.3'
gem 'sqlite3'
group :assets do
  gem 'sass-rails','~> 3.1.5'
  gem 'coffee-rails','~> 3.1.1'
  gem 'uglifier','>= 1.0.3'
end
gem 'jquery-rails'
gem "rspec-rails",">= 2.8.0.rc1",:group => [:development,:test]
gem "factory_girl_rails",">= 1.4.0",:group => :test
gem "cucumber-rails",">= 1.2.0",:group => :test
gem "capybara",">= 1.1.2",:group => :test
gem "database_cleaner",">= 0.7.0",:group => :test
gem "launchy",">= 2.0.5",:group => :test
#gem "devise",">= 1.5.0"
gem 'spree','1.0.0'

3)然后我跑

bundle install
bundle exec rails new .
rails g spree:install
rails s

安装后我和gem’spree’,’1.0.0’发生冲突,所以我发表评论.

我也收到了警告,但它有效:

[DEPRECATION WARNING] Nested I18n namespace lookup under "activerecord.attributes.spree/order" is no longer supported

非常感谢

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读