序曲
我最近决定选择Rails,这是在最近发现对Ruby的迷恋之后发生的,我实际上是在触及表面。
由于大多数开发人员(有经验或其他原因)尝试使用rails,我发现rails在很大程度上依赖于COC(约定而非配置),尽管如此,我发现,我的问题越具体,我就越难找到答案,因此我可能会问社区:)
即使在访问了谷歌搜索结果的第二页之后。
问题
我正在构建一个严重依赖外部API的web应用程序,我不太确定如何处理activerecord (因为我不认为我将使用is),但我确实需要使用会话。在这种情况下,Rails的最佳实践是什么?
**我仍然想使用Rails提供的所有内置功能。
我在想,也许我应该创建模型来表示从web服务中提取的数据,并从请求的数据中填充它们。
或
可能在创建应用程序时禁用Rails活动记录,并手动为会话创建单个模型。
其他不属于这里的问题
假设我不需要activerecord,那么在Rails中处理会话的最佳方法是什么?
在构建Rails应用程序时,我应该多久依赖一次JavaScript?
我真的很感谢你的帮助,任何建议都是非常受欢迎的.
发布于 2015-02-24 01:46:33
您可以选择使用ActiveRecord将会话数据存储在数据库中,但这肯定不是必需的。默认情况下,Rails使用Cookies存储会话数据。这是CookieStore提供的。
因此,当用户登录到Rails应用程序时,您可以首先使用API对他们的凭据进行身份验证,并在成功的情况下,将他们的user_id
(或令牌或用于标识该用户的任何东西)存储在会话中。在随后的请求中,可以使用存储在会话中的值来标识用户。
在构建模型以与API对话方面,ActiveResource是一个很好的选择,尽管您可能会觉得它有点挑剔,取决于您正在消费的API。她是另一种选择。
如果您使用的API是通过JSON进行通信的REST,那么这些库应该可以正常工作。
为了回答你的问题..。
希望这能有所帮助。
发布于 2015-02-24 00:42:35
在阅读了大量文章并询问了Rails开发人员之后,我开始为我的问题制定一个解决方案。
显然有一个现有的宝石(惊喜!惊喜!)它允许API使用rails应用程序,并维护activerecord的结构。
Gem被称为活动源,它有很好的文档,据我所知,它将完成这项工作,而且在这方面做得很好。
https://stackoverflow.com/questions/28666702
复制相似问题