Rails: friendly_id использует имя, а не слизнение в качестве идентификатора

StackOverflow https://stackoverflow.com/questions/7811904

Вопрос

Использование: Rails 3.0.3 friendly_id: 4.0.0.beta11

Я создаю полностью работающую версию разработки приложения, где все работало, в том числе urliper_id url: s, как domain.com/cars/mitsubishi

Теперь я развертываю приложение на Heroku, но по какой -то причине не могу заставить Priendly_id работать.

Проблема: когда я развернут его на Heroku, это дает мне «имя» как Friendly_id, а не slug_en или slug_se. Расчет.first.Friendly_ID дает, например, «Я расчет», а не «I-AM-A-Calculation», который будет содержанием slug_en.

Модель (расчет)

  extend FriendlyId
  friendly_id :name, :use => :slugged, :use => I18n

Миграция (расчет):

        t.string :slug_en
        t.string :slug_se

Migratiotion2:

add_index :calculations, :slug_en, :unique => true
add_index :calculations, :slug_se, :unique => true 

Проблема в том, что мне нужно подтолкнуть (Heroku DB: push) моя локальная база данных в Heroku (поскольку она заполнена данными), и поэтому я не уверен, насколько я могу доверять миграциям. Насколько я понимаю, они перезаписаны DB: Push.

Теперь это не должно иметь значения, так как это работает нормально на местном уровне. Если я использую i18n.locale =: se, это даст мне slug_se как id и slug_en для: en.

Стоит упомянуть, что Heroku использует Postgre, и я использую MySQL локально, если это важно.

Мои вопросы:

  1. Что обычно может быть проблемой, если я получу атрибут имени как friendly_id вместо slug_en или slug_se
  2. Есть ли что -то не так с кодом, который я представил здесь?
  3. Могут ли это вызвать постгр / mysql-дифференциации?
  4. Неужели индексы не создаются на моей установке Heroku?

Спасибо!

Это было полезно?

Решение

Казалось, что проблема заключается в том, что когда я загружаю файлы в Heroku. Heroku использует Friendly_id 4.0.0.beta8, и это первое в 4.0.0.beta11, где появляется slug_en/slug_se (если я правильно это понимаю).

Таким образом, проблема по -прежнему не является исправленной, но изменена на совершенно другой тип проблемы, которая на самом деле не связана с вопросом, поставленным в этом билете.

К вашему сведению: новая проблема: «Почему версия friendly_id меняется на более раннюю версию».

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top