如何在 Laravel 中加载模型?
-
21-12-2019 - |
题
我开始研究 Laravel 并在使用模型时遇到了问题。如何加载它们?例如在 CodeIgniter 中我使用它 $model = $this->load->model('some_model')
. 。在 Laravel 中,当我从控制器调用它时,就像 Sites::OfUser()
它工作正常,但是当我打电话时 Sites::getId()
它说该方法应该是静态的......是否可以在没有静态的情况下调用方法,或者我需要为每个模型创建外观?
我的模型如下所示:
namespace Models;
use Eloquent;
class Sites extends Eloquent {
public function scopeOfUser($query)
{}
public function getId($name)
{}
}
解决方案
对于静态方法--
$type = 站点::scopeOfUser($query);
如果你想要正常的像 codeingiter 那么使用 -
$model = 新站点 ();
$type = $model->scopeOfUser($query);
其他提示
当然,您可以在模型中创建一个静态方法,并在其中执行一些静态工作(获取名称或其他 ID)。
那没问题。
但是,如果您想使用,则必须将其声明为静态 ::
, ,而你却没有这样做。
public static /* <-- this */ function getId($name)
{
// Do work
// return $result;
}
不隶属于 StackOverflow