繁体   English   中英

Laravel Voyager Belongs To Many 关系显示“未找到结果”

[英]Laravel Voyager Belongs To Many relationship displays "No results found"

版本信息

  • Laravel:v5.7.15
  • 航海者:v1.1.10
  • PHP:7.2.8
  • 数据库:MySQL 5.7.14

描述

当我创建一个新的属于许多关系时,我无法在 Voyager 关系创建弹出窗口中选择显示字段,如果我仍然保存,则在添加/编辑记录时我无法选择相关实体。

重现步骤

重现行为的步骤:我有一个表“products”、“categories”和“category_product”(根据官方的默认 Laravel 命名约定,只是为了确定)。 Category_product 有“product_id”和“category_id”两个字段,既是主键又是索引。

我去已经存在的产品面包,尝试创建一个新的关系,见下图

图片

如果我仍然保存并尝试添加新记录,我将无法选择相关类别(肯定存在,有 4 个)

图片

但是,您可以看到有 4 个空行,我可以选择它们,但它们不包含键/标签,因为我在创建关系时无法选择它们。

请帮助我理解我做错了什么,我已经在 GitHub 和 StackOverflow 中搜索了很多,我找不到这个确切的问题。

我创建了 Product 和 Category 甚至 CategoryProduct 模型并定义了表名。 我在 Laravel 端尝试了多种关系定义,但我认为它们是不相关的。 现在我有这个:

public function categories()
{
    return $this->belongsToMany(Category::class, 'category_product');
}

感谢您使用 Voyager 完成了出色的工作,这是我使用数月后的第一次真正的挣扎,这仍然使它成为我长期以来使用过的最好的工具之一。

这是相同面包和相同关系的编辑视图

图片

您必须指定“完全合格的模型名称”

看截图在此处输入图像描述

请运行composer require tcg/voyager dev-master再次测试。 我已经解决了类似的问题,我认为它也可以解决您的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM