Commit 44585417 by Alexander Makarov

Merge pull request #696 from creocoder/ar-getnamespacedclass-static

Make ActiveRecord::getNamespacedClass() static
parents 92d3c98c 02581c59
...@@ -440,7 +440,7 @@ class ActiveRecord extends Model ...@@ -440,7 +440,7 @@ class ActiveRecord extends Model
public function hasOne($class, $link) public function hasOne($class, $link)
{ {
return new ActiveRelation(array( return new ActiveRelation(array(
'modelClass' => $this->getNamespacedClass($class), 'modelClass' => static::getNamespacedClass($class),
'primaryModel' => $this, 'primaryModel' => $this,
'link' => $link, 'link' => $link,
'multiple' => false, 'multiple' => false,
...@@ -478,7 +478,7 @@ class ActiveRecord extends Model ...@@ -478,7 +478,7 @@ class ActiveRecord extends Model
public function hasMany($class, $link) public function hasMany($class, $link)
{ {
return new ActiveRelation(array( return new ActiveRelation(array(
'modelClass' => $this->getNamespacedClass($class), 'modelClass' => static::getNamespacedClass($class),
'primaryModel' => $this, 'primaryModel' => $this,
'link' => $link, 'link' => $link,
'multiple' => true, 'multiple' => true,
...@@ -1400,10 +1400,10 @@ class ActiveRecord extends Model ...@@ -1400,10 +1400,10 @@ class ActiveRecord extends Model
* @param string $class the class name to be namespaced * @param string $class the class name to be namespaced
* @return string the namespaced class name * @return string the namespaced class name
*/ */
protected function getNamespacedClass($class) protected static function getNamespacedClass($class)
{ {
if (strpos($class, '\\') === false) { if (strpos($class, '\\') === false) {
$reflector = new \ReflectionClass($this); $reflector = new \ReflectionClass(static::className());
return $reflector->getNamespaceName() . '\\' . $class; return $reflector->getNamespaceName() . '\\' . $class;
} else { } else {
return $class; return $class;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment