2009-03-13 11 views
6
cis.statbib.org: script/console 
Loading development environment (Rails 2.2.2) 
Article.founc>> Article.count() 
ActiveRecord::StatementInvalid: Could not find table 'article' 
    from /home/hadley/web/cis.statbib.org/vendor/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:29:in `table_structure' 
    from /home/hadley/web/cis.statbib.org/vendor/rails/activesupport/lib/active_support/core_ext/object/misc.rb:39:in `returning' 
... 

Pero, ciertamente, parece que es allí en la base de datos:ActiveRecord :: StatementInvalid: No se pudo encontrar la tabla 'nombreTabla'

db: sqlite3 development.sqlite3 
SQLite version 3.2.8 
sqlite> select count(*) from author; 
168600 

He acaba de actualizar todas mis joyas, etc. Lo que va mal ?

+0

Está buscando un artículo, pero está buscando el autor. –

+0

Para un modelo de "Artículo", debe buscar una tabla de "artículos". ¿Has llamado 'set_table_name' a alguna parte? Y su ejemplo de consola se ve en la tabla 'autor' (que probablemente debería ser 'artículos'). –

+0

Ooops, eso fue solo un error tipográfico tonto. Tengo un conteo positivo en sql para el artículo, y el mismo error en la consola con Author.count(). – hadley

Respuesta

0

Como ya mencionó Sarah Mei en los comentarios, está comprobando manualmente si hay "autor", no "artículo".

Sin embargo, algo más podría estar fuera de lugar también. ¿Estableció intencionalmente el nombre de la tabla como "artículo" en su modelo? Por defecto, eso debería buscar la tabla de "artículos" (plural), así que sospecho que hay más código que no estamos viendo y que podría estar causando problemas.

+0

Sí, el nombre de la tabla es artículo, tengo ActiveRecord :: Base.pluralize_table_names = false en environment.rb (todos los nombres de mi tabla son singulares) – hadley

Cuestiones relacionadas