为了账号安全,请及时绑定邮箱和手机立即绑定

在 Laravel 查询中指定数据库表

在 Laravel 查询中指定数据库表

PHP
三国纷争 2023-11-03 20:43:31
我是 Laravel 新手,我正在尝试查询数据库中的特定表。我只有 1 个数据表和标准用户身份验证表。我收到错误:BadMethodCallException 调用未定义的方法 App\Figures::table()。模型namespace App;use Illuminate\Database\Eloquent\Model;class Figures extends Model{   }控制器namespace App\Http\Controllers;use Illuminate\Http\Request;use App\Figures;class figuresController extends Controller    public function figurespag2() {        $dummyDetails = Figures::table('figures')->where('name', 'batman');        return view ( 'pagination2.index' )->withUsers($dummyDetails);       }路线Route::get ( '/pagination2', 'figuresController@figurespag2' );我知道这将是显而易见的事情,但我对此很陌生。
查看完整描述

3 回答

?
达令说

TA贡献1821条经验 获得超6个赞

这是错误的


  $dummyDetails = Figures::table('figures')->where('name', 'batman');


方法一----------laraveleloquent


模型


namespace App;


use Illuminate\Database\Eloquent\Model;


class Figures extends Model

{

   protected $table = 'figures';

}

控制器


  $dummyDetails = Figures::where('name', 'batman')->get();

和 方法2 ---------- laravelQuery Builder


  $dummyDetails = \DB::table('figures')->where('name', 'batman')->get();


查看完整回答
反对 回复 2023-11-03
?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

使用这个你不需要定义表名


 public function figurespag2() {

        $dummyDetails = Figures::where('name', 'batman')->get();

        return view ( 'pagination2.index' )->withUsers($dummyDetails);

       }


查看完整回答
反对 回复 2023-11-03
?
桃花长相依

TA贡献1860条经验 获得超8个赞

首先你可能需要了解 Laravel 模型规则。


如果您创建的表名称类似于“ figures ”(复数),则需要通过Figure(单数)创建其模型。


如果您创建除此规则之外的表,那么您必须在模型中提及表名称,如下所示。

protected $table = "表名";


您可以像这样在控制器中使用 where 条件访问表。


  public function figurespag2() {

    $dummyDetails = Figure::where('name', 'batman')->get();

    return view ( 'pagination2.index' )->withUsers($dummyDetails);

   }

希望这可以帮助你。


查看完整回答
反对 回复 2023-11-03
  • 3 回答
  • 0 关注
  • 148 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信