【问题标题】:How do you work with a single ORM query result in FuelPHP?您如何在 FuelPHP 中处理单个 ORM 查询结果?
【发布时间】:2011-08-17 14:28:53
【问题描述】:

我有一个返回单个结果的查询,我想知道是否有一种方法可以访问该结果的属性而不必遍历它,因为我将其限制为单个结果。

这是我的查询:

$user = Model_User::find()
    ->where('email_address', Input::post('email_address'))
    ->where('password', Input::post('password'))
    ->limit(1);

我发现访问结果的唯一方法是在 $user 上运行 get() 方法并循环遍历结果,但我认为我遗漏了一些东西,并且有一种更简单的方法可以返回 @987654324 @ 作为我可以使用的单个对象,因为我将其限制为单个结果。

最有效的方法是什么?

【问题讨论】:

    标签: php orm fuelphp


    【解决方案1】:

    你试过了吗

    $user->get_one()?

    【讨论】:

      【解决方案2】:

      你也可以

      $user = Model_User::find_by_email_address_and_password(Input::post('email_address'), Input::post('password'));
      

      祝你有美好的一天:)

      【讨论】:

        【解决方案3】:

        Uku Loskit 询问您正确的语法。 如果您想始终检索单个结果,可以合并代码:

        $user = Model_User::find()
            ->where('email_address', Input::post('email_address'))
            ->where('password', Input::post('password'))
            ->get_one();
        

        给你一个建议:直接使用 Input::post('var_name') 时要小心,最好在保存变量之前使用验证。 另一种方法是将框架设置为对每个 $_GET 和 $_POST 变量执行某些操作,例如 htmlentities()。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-11-15
          相关资源
          最近更新 更多