从引擎内重定向到父Rails应用程序的路由

Sar*_*els 4 ruby routing ruby-on-rails

所以我在Rails应用程序中包含一个Rails引擎.我想redirect_to @record.polymorphic_relationship在我的引擎控制器中执行某些操作,其中@record.polymorphic_relationshipa是a Picture,它是父应用程序中的模型.picture_path父Rails应用程序中有一个路径助手.

我觉得我应该能够以main_app某种方式从引擎内部重定向到父应用程序中的路由.只是redirect_to @record.polymorphic_relationship在引擎控制器内部做不起作用,因为它抱怨没有picture_url路由存在.此相同的代码在父应用程序的控制器内工作.

如果我这样做redirect_to main_app.send("#{@record.polymorphic_relationship_type.downcase}_path", @record.polymorphic_relationship),它确实有效,但这看起来很糟糕.有没有更好的方法呢?

cga*_*gat 6

redirect_to main_app.url_for(@record.polymorphic_relationship)