【问题标题】:Show Multiple views in one function in Laravel在 Laravel 的一个函数中显示多个视图
【发布时间】:2017-07-10 15:56:41
【问题描述】:

所以,我目前正在尝试为用户所做的每一个动作制作一个活动日志。

class testActivityController extends Controller
{
public function index()
{
 $user = Auth::user();
 Activity('test-activity-controller')->log('I am inside test Activity 
 Controller public function index') ->causedBy($user);
  $allActivities = Activity::all();

 return View('admin.UsersActivityLog'->with('allActivities'), 
 View::testActivityview'?????);

testActivityView 是我将在其中显示用户输入信息的文本框的地方。所以我必须退货,对吧。

第二个是我必须显示用户进入该页面的日志,因此我必须创建一些关于活动的功能,这些功能将显示到所有用户活动 ($allActivities) 应该发布的主管理页面。

如何在一个函数中返回 testActivityView 和 UserActivityLog。

非常感谢。请原谅愚蠢的命名约定。这里已经是12点了。

【问题讨论】:

  • 为什么不创建一个部分/组件并将其包含到您的视图文件中?

标签: php laravel controller views activitylog


【解决方案1】:

您必须创建一个带有部分的视图以便于重用。然后它允许您编写各个部分:

layout.blade.php

@yield('header')
@yield('body')
@yield('footer')

combined.blade.php

@extends('layouts.layout')

@section('header')
    @include('header')
@stop

@section('body')
    @include('body')
@stop

@section('footer')
    @include('footer')
@stop

然后你从控制器调用它们;

function index()
{
    return view('combined');
}

因此,在您的情况下,您创建了两个视图:testActivityView.blade.phpUserActivityLog.blade.php,您创建了这两个的组合 combine.blade.php 并在其上包含其他两个:

@extends('layouts.layout')

@section('header')
    @include('header')
@stop

@section('body')
    @include('testActivityView')
    @include('serActivityLog')
@stop

@section('footer')
    @include('footer')
@stop

然后在你的路由控制器上你只返回组合视图:return View('combined')->with(.....

【讨论】:

  • 先生,让我重新表述一下这个问题。我想要的只是将值 $allActivities 发送到视图 UserActivityLog.blade.php。如何正确退货?我可以使用两次退货吗?
  • 陷阱:你只需要做 Return::view('UserActivityLog', compact('allActivities'));在紧凑型中,您可以将任意数量的 var 发送到视图,只需用逗号分隔 var。
  • 如果我不想返回 UserActivityLog 怎么办。我只想将数据发送到该视图,但我不想返回它。
  • 因为我必须返回 testActivityView 因为那是函数的索引。我的问题是我只需要将值发送到 UserActivityLog.blade 但我不需要返回它。非常感谢您顺便回复我。 :)
  • 哦,好吧,这将使我的 $allActivities 对整个项目都是全局的?我将把 $allActivities 的逻辑放在控制器的哪里?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-11-16
  • 1970-01-01
  • 1970-01-01
  • 2023-03-14
  • 2010-12-21
  • 2021-07-19
  • 1970-01-01
相关资源
最近更新 更多