【问题标题】:Yii doesn't find model by a given attributeYii 没有通过给定属性找到模型
【发布时间】:2012-12-10 06:26:56
【问题描述】:

我的密码没有加密。我将它用于一个简单的网站。无论如何,当我尝试通过密码搜索模型时

Yii::log("Password: " . CVarDumper::dumpAsString($this->password),'debug');
$record = Guest::model()->findByAttributes(array('password'=>$this->password));

当我登录 $this->password 时,它确实显示它已初始化,但 $record 返回 null。但是,如果我通过它的 ID 找到它,它确实会返回一些东西。我还尝试在 phpmyadmin 上手动注入 SQL,它确实有效。

对不起,这里是新手。

任何意见将不胜感激。

谢谢。

【问题讨论】:

  • 您的代码没有问题,重新检查这些值,显然要确保您正在寻找与 id 方法和 sql 方法完全相同的记录
  • 您好,感谢您的提示:我使用此 Guest::model()->findByAttributes(array('first_name'=>$this->first_name)); 搜索了 first_name 属性并返回了一条记录。我不知道为什么不能使用password 作为钩子。

标签: model yii find


【解决方案1】:

您的问题可能是 defaultScope() 中未列出“密码”

请看这里:Yii ActiveRecord field only returns default value for recently added column

您可以为客人展示您的模型吗?

【讨论】:

  • 您好,我已经修复了它,但我所做的是备份我的 Guest 模型并使用 Gii 重新创建它。然后,从我备份的 Guest 模型中复制内容,然后将其粘贴到新模型中。尽管使用了相同的代码,但不确定为什么它会修复它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-19
  • 2016-05-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多