0
(rdb:1) @account_session = AccountSession.new  
# => <AccountSession: no credentials provided>
(rdb:1) @account_session.errors
# => <Authlogic::Session::Validation::Errors:0x213cc78 @errors={}, @base=#<AccountSession: no credentials provided>>

我该如何防止这种情况?另请注意,不能提前提供凭据,因为这将使用(不正确的)数据填充 :new 表单。新的登录表单应该是空白的。

4

2 回答 2

0

您是否在您的一种方法/过滤器等中验证您的模型?

于 2009-09-16T10:11:56.370 回答
0

我在仅包含 AuthLogic 的 vanilla Rails 安装上重现了这一点。它揭示了这个问题中描述的行为实际上是 AuthLogic 设计行为。我不喜欢这样,因为在模型上调用 #new 不应该导致错误,如果没有真正存在的话。如果表单具有显示 @base 错误的错误样式的 UI 元素,这也很时髦。我将在 gem 的 github 问题上解决这个问题。

于 2009-09-17T03:47:42.500 回答