使用laravel 5.1,我可以动态地将自定义代码插入刀片视图吗?
例如,我有view.blade.php
:
<html>
<head>
<title>App Name - @yield('title')</title>
</head>
<body>
@section('sidebar')
This is the master sidebar.
@show
<div class="container">
@yield('content')
// Here, I want to insert a code dynamically, for example :
<div> <p> something </p> </div>
</div>
</body>
那么,有没有一种好方法可以在控制器中做这样的事情:
$customCode = "<div> <p> something </p> </div>";
$content = (string) $view;
//For example I want to insert this code into view file on line 11
updateContent($content, $customCode, $line_position_in_view);
答案 0 :(得分:2)
以下是jQuery的代码:
您的HTML文件或查看文件
<div class="container">
@yield('content')
// Here, I want insert a code dynamically, for example :
<div> <p> something </p> </div>
</div>
$.post("test.php",{},function (data){
$(".container").append(data);
});
注意:如果您想使用控制器功能,请使用正确的路径更改test.php
功能名称。
test.php文件或控制器功能
<?php
echo "<div> <p> something </p> </div>";
exit;
?>
答案 1 :(得分:0)
您不应该只在控制器中放置html和javascript,以便将其转储到刀片视图中。这违背了关注点。
您应该只创建一个主布局,并在您创建的其他页面上扩展此主布局。这样您就可以动态调整主布局页面的内容。
当然,您永远不应该将PHP功能混合到刀片视图中。在控制器中运行php功能,将其放入变量并将其传递给您的视图以供使用。
答案 2 :(得分:0)
例如,假设您不想插入类似的内容
{{$user->name}}
,但样式更多的html代码块显示了相同的字符串, 通过引导程序4说出来。那么您必须为该名称分配一个字符串,如
$user->update(['name' => '<span class="badge badge-success">SHILPILDOQ</span>']);
并且最终,对于刀片文件,您现在有了一点更改:
{!! $user->name !!}