耙子迁移中止
我正在运行Ruby 2.0.0,并正确安装了它。 刚刚加载了一个gem'设计',当我尝试迁移我的数据库更改时,它不起作用:
$ rake db:迁移rake中止! attr_accessible
从Rails中提取出来成为一个gem。 请为params(strong_parameters)使用新推荐的保护模型,或者将protected_attributes
添加到您的Gemfile中以使用旧模型。
然后,在另一个Stackoverflow帖子后,他们推荐安装Bundler。 我做到了这一点,并得到这个:
$ bundle exec rake db:迁移rake中止! attr_accessible
从Rails中提取出来成为一个gem。 请为params(strong_parameters)使用新推荐的保护模型,或者将protected_attributes
添加到您的Gemfile中以使用旧模型。
有人愿意接受挑战吗?
它看起来像你试图使用Rails 4.0.0beta不是(恕我直言)的新手最好的选择。 您最好切换回Rails 3 *,并产生记录良好,经过测试的rock-n-rolling环境的所有优点。 如果你仍然决定坚持Rails 4 ......以前没有严格的规则来处理大规模的任务。 Rails 4使用强参数标准化了这些参数 ,这些参数被合并到rails core中。 因此,你应该像下面这样做:
# controllers/my_controller.rb
def create
@app = MyApp.new(my_params)
if @app.save
redirect_to app_path(@app)
else
render :new, alert: 'There was a problem'
end
end
private
def my_params
params.require(:app).permit(:title, :password)
end
赋值逻辑现在被封装在一个私有方法中,以允许某些值充当参数。
请使用支持Rails 4的Devise 3.0.0.rc。
您需要:
更新Gemfile
:
gem 'devise', '3.0.0.rc'
bundle install
。