Rails Admin работает в разработке, а не в Heroku - PullRequest
2 голосов
/ 22 февраля 2012

Я разрабатываю приложение, которое содержит Rails Admin и CanCan.У меня есть только таблица пользователей, а не таблица администратора.У пользовательской таблицы есть логический атрибут admin.

Rails Admin отлично работает в разработке, но когда я пытаюсь получить к нему доступ через Heroku, я получаю:

        Started GET "/admin" for 70.34.8.244 at 2012-02-21 20:32:31 +0000

    ActiveRecord::StatementInvalid (PG::Error: ERROR:  relation "admins" does not exist
                SELECT a.attname, format_type(a.atttypid, a.atttypmod), d.adsrc, a.attnotnull
                  FROM pg_attribute a LEFT JOIN pg_attrdef d
                     ON a.attrelid = d.adrelid AND a.attnum = d.adnum
                 WHERE a.attrelid = '"admins"'::regclass
                   AND a.attnum > 0 AND NOT a.attisdropped
                 ORDER BY a.attnum
    ):



 cache: [GET /admin] miss

Есть идеи?

Спасибо

Ответы [ 3 ]

2 голосов
/ 23 февраля 2012

Я удалил файл и до этого момента я никогда не использовал команду git rm.
Итак, у Героку все еще был этот файл.

0 голосов
/ 23 февраля 2012

У меня тоже такая же проблема. Я даже попробовал heroku db: push, чтобы увидеть, что схема переносится правильно, но все равно ошибка (только для / admin link). Похоже на проблему в геме rails_admin.

Поиск в интернете выглядит так, как будто нам нужно предварительно скомпилировать ресурсы. Может быть, это вызывает ошибку. Постараюсь и дам знать.

ОБНОВЛЕНИЕ: ДА, это решило проблему. Вам нужно выполнить команду ниже локально, чтобы предварительно скомпилировать ваши ресурсы, а затем выполнить git commit и нажать на heroku. Это должно решить проблему. активы рейка: прекомпиляция

git add -A

git commit -am "Whatever Your Comment"

git push -u origin master

git push heroku master

И вы увидите, что ссылка на ваше приложение / администратор теперь работает нормально.

Отметьте его как ответ, если это решит вашу проблему.

0 голосов
/ 22 февраля 2012

Контрольный список:

  1. Убедитесь, что вы запомнили перенос вашей базы данных в Heroku.

  2. Показать код контроллера, который поддерживает /admin

  3. Красный флаг для меня в том, что он ищет «admins», а не «admin» в качестве имени столбца. Может быть простая опечатка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...