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