我有一个rails应用程序,需要引用另一个rails应用程序来填充其中的一些模型,并使用Active Resource来执行此操作。
当我需要点击一条路线时:
/channels.xml
完全没有问题,我可以使用自动映射......
但是,我还需要能够处理如下路线:
/channels/1/programs.xml
这就是我被困住的地方。
只看文档,它看起来像这可能算作一个自定义的宁静路线,在这种情况下我会被困在看起来非常凌乱的样子:
Channel.first.get(:programs)
这不仅看起来很糟糕,也不起作用(实际上有数据的rails应用程序
/channels//programs.xml
没有身份证。你知道,这很酷,因为事情变得更加复杂,其他rails对象中的“Channel”模型是从遗留数据库构建的,它没有考虑到rails(因此没有“id”列)。相反,它使用“station_id”。
所以,如果我必须使用那个凌乱的Channel.get方法,我怎样才能确保它正确设置id?我可以从ActiveResource应用程序执行此操作,还是需要在源rails应用程序中更改某些内容?
编辑:万一有人建议,我已经尝试过Channel.first.get(:programs,:id => 1),但这只是给我一条路线:
/channels//programs.xml?id=1。
也许我不得不放弃宁静的路线,只是从那里拉出身份......但我真的不想......
答案 0 :(得分:0)
查看名为prefix_options的内容
self.prefix_options[:channel_id] = <some channel_id>