Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel5:belongTomany(';\App\Article';)中的额外斜杠有什么作用?_Php_Laravel_Namespaces_Laravel 5.2 - Fatal编程技术网

Php Laravel5:belongTomany(';\App\Article';)中的额外斜杠有什么作用?

Php Laravel5:belongTomany(';\App\Article';)中的额外斜杠有什么作用?,php,laravel,namespaces,laravel-5.2,Php,Laravel,Namespaces,Laravel 5.2,在学习Laracasts Laravel 5教程时,导师没有提到第21集:多对多关系中名称空间引用[belongstomy('\App\Article')]前面的额外斜杠。它的意义是什么 如果我删除了多余的\,我会得到一个错误: 没有模型[App\Article]的查询结果 Article.php namespace App; use Illuminate\Database\Eloquent\Model; use Carbon\Carbon; class Article extends Mo

在学习Laracasts Laravel 5教程时,导师没有提到第21集:多对多关系中名称空间引用[belongstomy('\App\Article')]前面的额外斜杠。它的意义是什么

如果我删除了多余的\,我会得到一个错误:

没有模型[App\Article]的查询结果

Article.php

namespace App;

use Illuminate\Database\Eloquent\Model;
use Carbon\Carbon;

class Article extends Model 
{
     public function tags()
     {
         return $this->belongsToMany('App\Tag');
     }
}
namespace App;

use Illuminate\Database\Eloquent\Model;

class Tag extends Model
{

    public function articles()
    {
        return $this->belongsToMany('\App\Article');
    }
}
App/Tag.php

namespace App;

use Illuminate\Database\Eloquent\Model;
use Carbon\Carbon;

class Article extends Model 
{
     public function tags()
     {
         return $this->belongsToMany('App\Tag');
     }
}
namespace App;

use Illuminate\Database\Eloquent\Model;

class Tag extends Model
{

    public function articles()
    {
        return $this->belongsToMany('\App\Article');
    }
}

回答您的帖子标题:

与注释中提到的一样,\引用全局命名空间。不是应用程序名称空间

你也可以这样做

public function articles()
    {
        return $this->belongsToMany(Article::class);
    }
如果你更清楚的话。这也给了单击类直接进入它的定义的机会。(在大多数IDE中)


回答您收到的错误

没有模型[App\Article]的查询结果

如果控制器中有类似的内容,则通常会产生此错误:

$article = Article::findOrFail($id)

如果找不到该文章,它将抛出该异常。这意味着在本例中传递的$id不存在。

引用全局命名空间。看,为什么我应该为\App\Article使用全局命名空间,而不是为App\Tag或App\User使用全局命名空间?它们都使用相同的应用程序名称空间。