【发布时间】:2013-07-09 09:24:32
【问题描述】:
我正在工作台环境中开发一个包。我有一个类似的模型
<?php namespace Vendor\Webshop\Models;
use Vendor\Webshop\Models\Country as Country;
use Illuminate\Database\Eloquent\Model as Eloquent;
/**
* A catalog
*/
class Catalog extends Eloquent {
// Define the database
protected $table = 'catalogs';
// Mass assignment restriction
protected $guarded = array('id');
// Return the countries related to this catalog
public function countries() {
return $this->belongsToMany('Vendor\Webshop\Models\Country');
}
/**
* Returns whether to enforce the compability check or not
*/
public function getForceCompabilityTest() {
return $this->force_compability_check;
}
}
?>
我想知道我是否可以拥有像这样的自定义实例获取器
public function getDefaultCatalogs() {
return Catalog::where('is_default_catalog', '=', true)->get();
}}
在类本身内。这是可能的,还是这些方法仅适用于具体实例,我可以像Catalog::getDefaultCatalogs() 从类外调用它们吗?
【问题讨论】:
-
你尝试过类似
Vendor\Webshop\Models\Catalog::getDefaultCatalogs() -
这不是关于命名空间,更多的是关于方法的静态调用,“从类外部”有点误导,sry