laravel - Laravel 视图进入另一个视图
问题描述
不久前刚开始学习 Laravel,我有一个关于视图的问题。
我有 2 个视图文件(刀片)。
一种显示数据库中的类别。
另一种是在产品中显示 as 搜索的结果。
我想在同一个视图中使用它们,第一部分是搜索器区域,下面的区域是我想列出类别的地方。
我尝试了一些方法来使其工作,但我不确定哪种方法是正确的:
我在控制器中创建了一个函数,在其中列出了类别并处理了搜索并将其发送到视图,但我不喜欢这种方法,因为我在一个函数中处理两种不同的逻辑。
我试图将视图文件生成或@include 到主视图中。我得到了一个错误,因为数据库查询没有发生这种情况。我认为 yield 和 include 仅适用于静态数据。
所以,我不知道如何正确处理这个问题。
有人可以建议我解决这个问题吗?
提前感谢帮助!
解决方案
可以有几种方式。您可以尝试在刀片文件中获取类别数据。因此,例如,在 category.blade 中,您可以从数据库中获取类别列表。然后它将独立于其他视图文件和控制器。例如,您可以包含 category.blade.php。
第二种方式,是通过ajax获取类别数据。在这种情况下,您不能在所有使用类别的页面中插入脚本。因此,在这种情况下,您可以使用模板结构。例如。在template.blade.php
<!DOCTYPE html>
<html class="no-js css-menubar" lang="en">
@stack('style')
@include('admin.layouts.head')
@include('admin.layouts.header')
@include('admin.layouts.page')
@include('admin.layouts.footer')
@stack('script')
</html>
在 page.blade.php
<div class="page">
@yield('page-content')
</div>
在单个页面中,
@extends('admin.layouts.template' ,['menu'=>'coach'])
@section('insert-css')
your custom css content here
@endsection
@section('page-content')
Your page content here
@endsection
推荐阅读
- excel - 如何在数据标签中显示系列图例标签名称,而不是 Power BI 聚类或堆叠柱形图中的值
- python-3.7 - 如何使用Python中的函数随机获得不重复的三位数字
- ios - iOS 10 vs iOS 11 安全区
- html - 我想用 html 在 div 中设置输入样式
- javascript - 在 IE 中从 jQuery 下载 .msg 文件
- apache-kafka - 卡夫卡流 | 状态存储 comp-store 可能已迁移到另一个实例
- python - 有没有一种方法可以在不汇总结果的情况下聚合行?
- .net - 错误 FS3021 来自提供的类型“FSharp”的意外异常
- python - 将带有对象列表的字典作为 django 中的值呈现
- botframework - 如何使用机器人模板创建机器人