Ruby on Rails 入门之:(25) Rails找不到数据库表解决办法
最近这两天一直都为了Rails找不到数据库表而烦恼,而且也没有找出来为什么出现这样的情况。。。
使用scaffold自动生成的程序支架,运行的时候提示这样的错误:
ActiveRecord::StatementInvalid in StudentsController#index
Mysql2::Error: Table 'blog_development.students' doesn't exist: SHOW FULL FIELDS FROM `students`
不论是数据库中使用什么样的表名,都会提示找不到表。
然后我就郁闷了。。。。以为是系统问题,后来重装了系统,问题依旧,但是以前写的Rails程序还能正常的运行。。。。其了乖了。。。
后来终于找到一个办法,在模型类的代码中添加这个模型类对应的表名:
下面是修改了以后的模型类:
[ruby]
class Student < ActiveRecord::Base
attr_accessible :id, :info, :name, :number
set_table_name "Students"
end
class Student < ActiveRecord::Base
attr_accessible :id, :info, :name, :number
set_table_name "Students"
end
然后就一切都可以正常运行了。。。。
至于为什么,我还不知到,希望有大牛帮忙解释一下。
补充:Web开发 , 其他 ,