Ruby on Rails 入门之:(25) Rails找不到数据库表解决办法

来源:互联网 发布:网络协议的组成部分 编辑:程序博客网 时间:2024/05/21 11:21

最近这两天一直都为了Rails找不到数据库表而烦恼,而且也没有找出来为什么出现这样的情况。。。


使用scaffold自动生成的程序支架,运行的时候提示这样的错误:


ActiveRecord::StatementInvalid in StudentsController#index

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


然后就一切都可以正常运行了。。。。

至于为什么,我还不知到,希望有大牛帮忙解释一下。