|
|
1
4
在典型的Rails应用程序中,身份验证信息存储在活动会话中,而不是参数中。因此,编写一个能做你想做的事情的助手是相当简单的。 创建一个模块并将其包含在ApplicationHelper中似乎相当不正统。传统的方法是创建一个单独的助手,在这种情况下,它可能被称为AuthenticationHelper。然后,这可以包含在任何所需的控制器中,或者如果您愿意,可以加载到ApplicationController中,使其普遍可用。 一般来说,助手不应包括其他助手。最好将多个助手加载到给定的控制器中。 助手方法可以完全访问它们所操作的控制器上下文中声明的任何实例变量。具体来说,这些只是实例变量(@name),而不是局部变量(name)。也为特定视图执行辅助方法。 此外,我不确定为什么用户会在同一步骤中提供凭据并执行操作,至少对于传统的基于网络的应用程序是这样。通常,该过程是登录,然后单独执行操作。 然而,在API的情况下,每个事务都是一个独立的操作,最直接的方法是提取处理身份验证的相关请求参数,建立一些控制器实例变量,然后在证书施加的限制下继续执行特定请求。 对于这类事情,我通常采用的方法是在ApplicationController本身中加入一个身份验证结构,该结构可以执行所需的检查。这些是受保护的方法。 虽然像can_edit_user这样的用户很容易加入其中?还有can_create_group?这些很快就会失控。为通用can_performe设置挂钩是一种更简单的设计?还是有权限?传递操作和任何所需参数的方法。
|
|
|
user987 · 如何在Django中访问提交的表单请求数据 1 年前 |
|
|
Mehdi · 使用python请求从deta.space获取数据 2 年前 |
|
|
Michael · PHP cURL HTTP请求 2 年前 |