我正在使用rails中的微服务框架,并且遇到了一个View,我们想要链接到几个不同的应用程序,这些应用程序将引用正在显示的user
。 user
是通过user-urn
标识的。
关于我们要链接的应用程序的一些注意事项 -
user
- 也就是说我们可以/users/user-urn
或/users?urn=user-urn
我的第一直觉是添加一个链接帮助器,它将获取user
的参数(从视图中给出),生成link_to
策略,其中url存储为{{1} }。它看起来像这样 -
ENV
这使助手太大,看到我们需要许多不同的助手来实现同样的目标。
我的问题是 - 将所有这些链接直接添加到包含def app_1_link(user)
url = "#{ENV['APP_1_URL']}/users/#{user.urn}"
link_to "Application 1", url, :target => "_blank"
end
vars的视图中是不好的做法?
e.g。 (ENV
或者我应该构建一些额外的类/模块逻辑来正确处理构建链接吗?
答案 0 :(得分:0)
我会创建一个db表来保存不同应用程序的信息,以及相应的模型。一旦你开始在配置文件中有大量的东西列表,存储为常量,通常表明你应该把它移到数据库中。
然后,您可以在ExternalApp模型中使用模型方法(或任何您称之为模型的方法)来生成必要的URL。