アプリ全体のスラッグ ( Slugalicious gemと Sluggable テーブルを使用) を使用するアプリがあり、次のコードを使用してこれらのスラッグにルーティングしました。
#Slugs
begin
Slug.all.each do |s|
begin
get "#{s.slug}" => "#{s.sluggable_type.downcase.pluralize}#show", :id => s.slug
rescue
end
end
rescue
end
現在、このコードでスラッグ モデルを更新すると、ルートが更新されます。
after_save :update_routes
def update_routes
Rails.application.reload_routes!
end
これはdevで完全に機能します:
私が得ている問題は、新しいスラッグを更新または作成すると、Heroku がそれに対応するように更新されないことです。それは開発で機能し、(紛らわしいことに)Herokuで「heroku run rake routes」を実行すると機能します。しかし、新しい URL を参照しようとすると、アプリは 404 を表示するだけです。アプリを再デプロイすると、すべてのルートが機能するため、アプリ全体のルートを更新することと関係があると思います
この質問は、Heroku で複数のプロセスを実行することと関係があると言っていましたが、私はまだこれを見つけていません。
何か案は?よろしくお願いします