【问题标题】:Laravel with() together Table or Variable NameLaravel with() 一起使用表或变量名
【发布时间】:2021-03-29 14:58:18
【问题描述】:

我正在阅读与Repository Pattern 相关的博客。我看到了 withBlogs 方法的使用。

public function index()
{
    $blogs = $this->blogRepository->all();

    return view('blog')->withBlogs($blogs);
}

我以前从未见过这样的事情。它的目的或作用是什么?

【问题讨论】:

    标签: laravel laravel-5 eloquent


    【解决方案1】:

    这是laravel的神奇方法

    你可以在 laravel 中用 with() 来命名方法

    让我通过示例来解释一下,您在控制器方法中编写的以下代码

    return view('index')->withName('Name')->withFullName('Full Name')->withaddress('Your address')->withcountryName('CountryName');
    

    然后您可以访问下面解释的视图中的值

    withName('Name') in view it becomes $name
    withFullName('Full Name') in view it becomes $fullName
    withaddress('Your address') in view it becomes $address
    withcountryName('CountryName') in view it becomes $countryName
    

    【讨论】:

    • withFullName('Full Name') 这里是“Full Name”,是可变的吗?
    • withFullName("Full Name") 在此您可以使用 $fullName 访问值,该值包含值“Full Name”,如 $fullName = "Full Name" 您在 ( ) 中提供的任何值都成为$fullName 变量
    • 我想知道“全名”的数据源是什么?在 $blog 的情况下,它是通过 Repository 通过 eloquent 检索数据。
    • “全名”不应该有空格,我猜……我很困惑
    • 'Full Name' 是 $fullName 的值,它是字符串值,它可以是任何字符串或变量或类的对象
    【解决方案2】:

    它用于将数据传递到视图中。 with 方法返回视图对象的一个​​实例,以便您可以在返回视图之前继续链接方法。以下所有语法都归档相同的内容:

    return view('blog')->withBlogs($blogs);
    
    return view('blog')->with('blogs', $blogs);
    
    return view('blog')->with(compact('blogs'));
    
    return view('blog', compact('blogs'));
    

    【讨论】:

    • 这很有帮助
    猜你喜欢
    • 2021-06-12
    • 1970-01-01
    • 1970-01-01
    • 2021-11-26
    • 2018-02-23
    • 1970-01-01
    • 1970-01-01
    • 2022-10-24
    • 1970-01-01
    相关资源
    最近更新 更多