小编Man*_*anu的帖子

同一模型上的 Laravel ManyToMany 关系

我试图在我的标签模型上建立双向多对多关系,但我遇到了这个“问题”。

我的模型如下所示:


<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Tag extends Model
{
    protected $table = 'tags';
    public $timestamps = false;

    public function tags()
    {
        return $this->belongsToMany(Tag::class, 'tag_tag', 'tag_one_id', 'tag_two_id');
    }

}

Run Code Online (Sandbox Code Playgroud)

现在假设我的标签表中有 Tag1 和 Tag2,然后我将 Tag2 与 Tag1 关联起来。现在我的数据透视表将如下所示:

+----+------------+------------+
| id | tag_one_id | tag_two_id |
+----+------------+------------+
| 1  | 1          | 2          |
+----+------------+------------+
Run Code Online (Sandbox Code Playgroud)

当我尝试这段代码时:

$tag = Tag::find(1);
$tag->tags()->get();
Run Code Online (Sandbox Code Playgroud)

我得到了 Tag2 实例,它是正确的。

但是当我尝试运行这段代码时:

$tag = Tag::find(2);
$tag->tags()->get();
Run Code Online (Sandbox Code Playgroud)

我想接收 Tag1 实例,但我没有。

是否可以仅使用模型上的一种方法使用 Laravel 默认 Eloquent 来完成此任务?

php mysql relationship laravel eloquent

6
推荐指数
1
解决办法
1953
查看次数

如何检查对象是否未定义(javascript)?

我必须检查对象是否未定义,但是当我这样做时

typeof myUnexistingObject.myUnexistingValue == 'undefined'
Run Code Online (Sandbox Code Playgroud)

我收到这个错误

Uncaught ReferenceError: myUnexistingObject is not defined
Run Code Online (Sandbox Code Playgroud)

那么,如何检查未定义的对象或属性?

javascript undefined javascript-objects

5
推荐指数
1
解决办法
7031
查看次数