gpt4 book ai didi

php - 在 Laravel 中,我可以创建一个没有 new 的新模型实例吗?

转载 作者:行者123 更新时间:2023-12-04 18:00:48 25 4
gpt4 key购买 nike

例如:您可以创建一个新的 User 模型实例:

new App\Model\User()

但是当我在 Blade View 中使用它时,看起来像:

new App\Model\User()->..->...

我觉得这不是个好办法。它不是那么优雅。所以我想添加一些方法来实现我可以在 Blade View 中使用如下所示:

User::instance()->..->...

我怎样才能做到这一点?非常感谢!

感谢您的帮助。我知道这不是在 Blade View 中调用模型的好方法。但在某些情况下,为了方便,有时我仍然有机会在 Blade View 中调用模型。例如,在创建 Blade 形式时,通常这样使用:

{!!Form::model(new App\Model\User, ['url' => '/', 'class' => 'form' ])!!}

所以有机会在 Blade View 中使用模型。所以我想找到一种优雅的方式来获取 Model 的实例,而不是使用新的 App\Model\ModelName...喜欢

User::instance() 

获取\App\Model\User 的新实例。

模型中的 scopeQuery 可以工作吗?

最佳答案

首先,如果您了解 MVC 的概念,您应该知道模型、 View 和 Controller 之间的关系。

作为中间人的 Controller 应该完成将适当的数据传递给您的 View 的工作。

在 Laravel 中这是一种更好的方法。

你的 Controller :

use App\Model\User;
class AccountController extends Controller{

public function __construct (User $user){
$this->user = $user;
}


public function profile(){
return view('profile, ['user'=>$this->user]);
}

}

然后在你的 View 中,profile.blade.php

 Welcome {{$user->name}}

关于php - 在 Laravel 中,我可以创建一个没有 new 的新模型实例吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35656568/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com