当前位置: 首页 > 知识库问答 >
问题:

Laravel 5.3对数据库进行查询,并将所有视图传递给它

何灼光
2023-03-14

我想从数据库中获取一些动态数据,并将其传递给所有视图。我试着从互联网上举出一些例子,但在我这样的情况下,它们似乎不起作用

public function boot(){}

我不能使数据库查询只传递硬编码值。我尝试的另一种方法是基本控制器,但视图在访问变量时给我错误

$query = DB::table('users')->first();
\View::share('user', $query);

任何有基于BaseController的解决方案的人都将不胜感激,如果我遗漏了什么,请提醒我

共有3个答案

柳晔
2023-03-14

它从启动时开始工作:

View::share ('variabelname', DB table first () etc etc)

然而,我遇到了一个问题:

如果删除表或删除表,然后运行迁移和种子,则会出现错误:

找不到基本选项卡/视图。

所以我必须在任何迁移刷新等之前从应用服务提供商注释掉该行。

华坚成
2023-03-14

您可以使用视图编辑器。"视图编辑器是在呈现视图时调用的回调或类方法。如果在每次呈现视图时都希望将数据绑定到该视图,则视图编辑器可以帮助您将该逻辑组织到单个位置。"

您可以在上找到更多详细信息https://laravel.com/docs/5.3/views#view-作曲家

艾骏
2023-03-14

根据https://laravel.com/docs/5.4/views#sharing-包含所有视图的数据:

有时,您可能需要与应用程序呈现的所有视图共享一段数据。您可以使用视图facade的share方法来执行此操作。通常,您应该在服务提供商的引导方法中进行共享调用。

同样,作为该站点中的一个示例,您应该将其添加到您的服务提供商之一:

class AppServiceProvider extends ServiceProvider
{
    public function boot()
    {
        if (!app()->runningInConsole()) {
            $query = DB::table('users')->first();
            \View::share('user', $query);
        }
    }
}
 类似资料:
  • 我有一个配置表,在其中配置select子句查询字符串,我将获得该字符串并运行NativeQuery。 我正在尝试实现一种功能,即使用spring-boot将数据库返回的值传递给本机MySQL/Hibernate查询,但在org.hibernate.exception.SqlGramMareXception:could not extract ResultSet时遇到了问题 ConfigDTO有一个

  • 问题内容: 在我的RCP应用程序中,左侧有一个用于导航的视图,右侧有一个用于视图的文件夹。透视图看起来像这样: 我想根据用户在导航树中选择的内容打开不同的视图。认为这并不难。我的导航树视图: 这似乎很好。仅有一个小问题:我需要以某种方式将对象(例如,selectedItem)传递给我的视图,以使用户与其内容进行交互。我怎么做? 我看到了一些示例,其中一些同事编写了自己的视图,并将其放置在右侧。然后

  • 问题内容: 第一次海报,长期的读者。我花了很长时间寻找答案,这使我认为这是我所缺少的基本知识。 我试图提取保存在数据库表中的数据,并将其传递通过,以显示在Highcharts图中。在检查源代码时,我没有从Django或客户端收到任何错误。 使用:Django 1.7和Python 3.4 views.py: get_data()函数: 模板: 最后的网址: 一切似乎都在运行,但Highchart图

  • 在我们讨论数据库和数据模型之前,让我们先讨论一下如何将数据从控制器传递给视图。控制器类将响应请求来的URL。控制器类是给您写代码来处理传入请求的地方,并从数据库中检索数据,并最终决定什么类型的返回结果会发送回浏览器。视图模板可以被控制器用来产生格式化过的HTML从而返回给浏览器。 控制器负责给任何数据或者对象提供一个必需的视图模板,用这个视图模板来Render返回给浏览器的HTML。最佳做法是:一

  • 问题内容: 在大多数语言(如c ++)中,传递数组会导致通过引用隐式传递它,因此对函数中传递的数组进行的任何更改都将导致更改原始数组。我正在学习Golang,在Alan AA Donovan和Brian W. Kernighan撰写的《 Go编程语言》一书中,它的行为不同于其他语言-不会隐式地通过引用传递数组。 这让我有些困惑-这是否意味着在没有引用的情况下传递数组不应该修改数组本身?让我说明一下

  • 问题内容: 我想在Laravel 5应用程序的所有视图中都可以访问一些默认数据。 我尝试搜索它,但仅找到Laravel 4的结果。我在这里阅读了文档“使用所有视图共享数据” ,但我不知道该怎么做。以下代码应放在哪里? 谢谢你的帮助。 问题答案: 这个目标可以通过不同的方法来实现, 1.使用BaseController 我喜欢设置的方式,我制作了一个扩展Laravel自己的类,并在那里设置了各种全局