omatech/laravel-autoview

1.0.0 2018-12-14 16:44 UTC

This package is not auto-updated.

Last update: 2024-09-18 20:49:48 UTC


README

辅助函数,用于返回视图而不指定路径。一种简单的方式来强制统一组织 resources/views 文件夹。

安装

在您的 composer.json 中要求此包。

composer require omatech/laravel-autoview

使用

首先,根据控制器和操作,在文件夹内组织您的视图(blade)。例如,如果我们有一个名为 ProductController 的控制器和一个名为 index 的操作,其视图将位于名为 product 的文件夹中,文件名为 index.blade.php

此外,建议将视图分组在一个通用文件夹中,以区分组件或布局。此辅助函数解释此文件夹名为 pages

这样,您可以使用 autoview() 辅助函数,而无需指定视图所在的路由。

因此,而不是这个

public function index()
{
    return view('pages.product.index');
}

我们将这样做

public function index()
{
    return autoview();
}

附加功能

  • 您可以通过发布配置文件并修改 pages_folder 选项来修改通用文件夹的名称。也可以通过设置为 false 来忽略。

  • 如果视图需要一些数据,您可以使用 Illuminate\View\View 类的 with 方法。

public function show($id)
{
    $product = Product::find($id);
    return autoview()->with(compact('title', 'subtitle'));
}
  • 如果 blade 的名称与操作不同,它可以作为参数传递。
public function showLoginForm()
{
    return autoview('login');
}
public function showLoginForm()
{
    $title = 'Login Title';
    return autoview('login')->with(compact('title'));
}
  • 您可以通过将第二个参数设置为 false 来忽略基本结构。虽然这样做最好直接使用 view
public function showLoginForm()
{
    $title = 'Login Title';
    return autoview('login', false); // = view('login')
}

致谢

组织

贡献者

查看贡献者列表 这里

许可

MIT 许可证.