我正在开发一个关于Rails上ruby的每日交易应用来学习它。
我已将创建为管理员,用户和交易安装了有效管理员。 它工作得很好,但我不理解(因为我对Ruby on Rails很新),是:
Active Admin是否自行生成交易路线,这样我就可以为每笔交易提供支持:myapp.com/deals/deal_id=456(交易456)?这是一个描述456交易的页面?
我看到我是否'搜索路线'我有以下路由由Active Admin创建:myapp / admin / deals /:id这是我在Active Admin上的视图页面,但那不是什么我想要做。我想显示交易网站访问者的视图。它应该是像myapp.com/deals/456
这样的东西我需要能够自动创建一个路由/网址(例如myapp.com/deals/456),一旦我在Active Admin的管理界面中创建了交易,网页访问者就可以看到。
我应该在DealsController上创建一个'show'方法吗?
每次在Active Admin上的管理界面中创建新的交易时,如何管理生成'route / url'部分?
如果您知道有任何网络资源解释这一点,那也会受到赞赏,因为我是新手(请注意,我也可以使用指南:博客,它将是如何生成路线/网址以显示某个博客在AA上创建后发布,或者对于电子商务网站,它将为产品页面创建路由/网址。
答案 0 :(得分:1)
Rails基础知识:
:id
代表您正在查看/编辑/处理/不管的模型的id列的值。
因此,如果您希望您的路线回复
/deals/deal_456
你必须指示它做到这一点:
match '/deals/deal_:id', to: "deals#show", via: 'get', as: :view_deal # or path of your like
然后,根据您所看到的内容,以下所有内容都是等效的
@deal=Deal.find(456)
redirect_to view_deal_path(@deal) # myapp.com/deals/deal_456
redirect_to deal_path(@deal) # myapp.com/deals/456
redirect_to @deal # myapp.com/deals/456