升级到 Rails 2.3.2 遇到问题(Depot 例子)

升级到 Rails 2.3.2 遇到问题
Netbean 6.5 Ruby pack 中 Depot 例子。
Rails 2.3.2
Default Sqlite Database, mysql做DB要做些调整。

rake db:migrate
执行后可能出现以下错误: rake aborted! undefined method `each' for #
先升级 MYSQL的GEM。
还有问题如下办法解决
The problem is that libmysql.dll shipped with Mysql doesn't play well with ruby
2.2..
The solution is to download the libmysql.dll from:
and save this in your ruby bin directory

导入数据后启动SERVER遇到
uninitialized constant ApplicationController 错误。
而去store_controller.rb去看
class StoreController < ApplicationController
也就是说找不到application.rb的定义,而当前的文件又确实有application.rb的定义。
问题在那里呢? 原来是rails升级以后,application.rb默认文件名改了。
这或者是“约定高于配置”的另一面,有人改了约定,我们还不太清楚。
那么好吧,我把application.rb的文件名改成application_controller.rb。
或 采用 rake rails:update 即可更新所有的文件,
包括 application.rb 自动改名接着想要运行,
或者,还有一些东西要改config/boot.rb里,那个典型的require_gem问题。
else gem "rails"
#require_gem "rails"
require 'initializer'
用户访问正常了,但用ADMIN登陆后PRODUCT列表会出错 paginate 找不到。
找到 classic_paginate包 解压 放到目录 E:\prj\Depot\vendor\plugins
修改 E:\prj\Depot\vendor\plugins\classic_pagination\lib\pagination.rb 文件

options[:singular_name] ||= ActiveSupport::Inflector.singularize(collection_id.to_s)
options[:class_name] ||= ActiveSupport::Inflector.camelize(options[:singular_name])
# options[:singular_name] ||= Inflector.singularize(collection_id.to_s)
# options[:class_name] ||= Inflector.camelize(options[:singular_name])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值