Laravel 数据来自数据库,但未显示在视图中
嗨,我正试图从数据库中获取数据,数据来自dd();但未在视图表中显示,我使用laravel-5.8,提前感谢,我使用资源路径 嗨,我正试图从数据库中获取数据,数据来自dd();但未在视图表中显示,我使用laravel-5.8,提前感谢,我使用资源路径 控制器:Laravel 数据来自数据库,但未显示在视图中,laravel,laravel-5.8,Laravel,Laravel 5.8,嗨,我正试图从数据库中获取数据,数据来自dd();但未在视图表中显示,我使用laravel-5.8,提前感谢,我使用资源路径 嗨,我正试图从数据库中获取数据,数据来自dd();但未在视图表中显示,我使用laravel-5.8,提前感谢,我使用资源路径 控制器: public function index() { $files = File::all(); //dd($files); if (Auth::user()->a
public function index()
{
$files = File::all();
//dd($files);
if (Auth::user()->admin == 0) {
$file = Auth::user()->files;
return view('home', compact('file', 'files'));
} else {
$users['users'] = \App\User::all();
return view('layouts.master', $files);
}
$filedata = ($r->has('file') ? $query->wherefilename($r->filename) : $query)->get();
$file = DB::table('importpdfs')->distinct('filename')->pluck('filename')
->reject(function($v) { return $v === 'Mean'; });
return view('home', compact('files',
'filedata', 'importpdfs', 'data'))->withData(null);
//return view('home', compact('files'))->withData(null);
}
刀片文件:
<div class="card-body table-responsive p-0">
<table class="table table-hover" id="table_id">
<tbody><tr>
<th>File_ID</th>
<th>Battery</th>
<th>No_of_questions_attempted</th>
<th>SAS</th>
<th>NPR</th>
<th>ST</th>
<th>GR</th>
</tr>
@foreach ($files as $filedata)
<tr>
<td>{{ $filedata->file_id }}</td>
<td>{{ $filedata->Battery }}</td>
<td>{{ $filedata->No_of_questions_attempted }}</td>
<td>{{ $filedata->SAS }}</td>
<td>{{ $filedata->NPR }}</td>
<td>{{ $filedata->ST }}</td>
<td>{{ $filedata->GR }}</td>
</tr>
@endforeach
</tbody></table>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<!-- include partials.chartjs -->
@include('partials.chartjs')
<script type="text/javascript">
window.svgPDF = () => {
var svg =
document.querySelector('#pie_chart svg'),
xml = new
XMLSerializer().serializeToString(svg),
data = "data:image/svg+xml;base64," + btoa(xml),
img = new Image()
img.onload = function () {
var canvas =
document.createElement('canvas');
var context = canvas.getContext('2d');
canvas.width = this.width;
canvas.height = this.height;
context.drawImage(this, 0, 0 );
window.chartPDF(canvas)
}
img.setAttribute('src', data)
}
</script>
文件标识
电池
未尝试任何问题
SAS
NPR
装货单
GR
@foreach($files作为$filedata)
{{$filedata->file_id}
{{$filedata->Battery}
{{$filedata->没有问题}
{{$filedata->SAS}
{{$filedata->NPR}
{{$filedata->ST}
{{$filedata->GR}
@endforeach
@包括('partials.chartjs')
window.svgPDF=()=>{
var svg=
document.querySelector(“#饼图svg”),
xml=新
XMLSerializer().serializeToString(svg),
data=“data:image/svg+xml;base64,”+btoa(xml),
img=新图像()
img.onload=函数(){
变量画布=
document.createElement('canvas');
var context=canvas.getContext('2d');
canvas.width=this.width;
canvas.height=this.height;
drawImage(this,0,0);
window.chartPDF(画布)
}
img.setAttribute('src',data)
}
我怎样才能解决这个问题?或者任何解决此问题的建议或链接???在home.blade.php或layouts/master.blade.php中打印哪个刀片文件?
在您没有copmact的情况下,使用“with”函数或“compact”函数发送变量,如果您正在使用资源路由
public function index()
{
$files = File::all();
if (Auth::user()->admin == 0) {
$file = Auth::user()->files;
return view('home', compact('file', 'files'));
} else {
$users['users'] = \App\User::all();
return view('layouts.master', $files);
}
$filedata = ($r->has('file') ? $query->wherefilename($r->filename) : $query)->get();
$file = DB::table('importpdfs')->distinct('filename')->pluck('filename')
->reject(function($v) { return $v === 'Mean'; });
return view('home', compact('files','filedata','importpdfs'));
}
当通过php artisan创建控制器时。Laravel创建一些默认功能,即索引、创建、存储、显示、编辑、更新和销毁
示例
//app/routes.php
控制器处理的操作
**HTTP Verb Path (URL) Action (Method) Route Name**
GET /nerds index nerds.index
GET /nerds/create create nerds.create
POST /nerds store nerds.store
GET /nerds/{id} show nerds.show
GET /nerds/{id}/edit edit nerds.edit
PUT/PATCH /nerds/{id} update nerds.update
DELETE /nerds/{id} destroy nerds.destroy
这将自动为该资源控制器分配许多操作。现在,如果您转到浏览器并在example.com/nerds上查看应用程序,它将与NerdController中的正确方法相对应
视图
因为只有四条路线是GET路线,所以我们只需要四个视图。在我们的app/views文件夹中,让我们现在创建这些视图
- 应用程序
- 观点
- 书呆子
- index.blade.php
- create.blade.php
- show.blade.php
- edit.blade.php
- 书呆子
**HTTP Verb Path (URL) Action (Method) Route Name**
GET /nerds index nerds.index
GET /nerds/create create nerds.create
POST /nerds store nerds.store
GET /nerds/{id} show nerds.show
GET /nerds/{id}/edit edit nerds.edit
PUT/PATCH /nerds/{id} update nerds.update
DELETE /nerds/{id} destroy nerds.destroy
//app/controllers/NerdController.php
:$query)->get()
你的观点
//app/views/nerds/index.blade.php
<div class="card-body table-responsive p-0">
<table class="table table-hover" id="table_id">
<tbody><tr>
<th>File_ID</th>
<th>Battery</th>
<th>No_of_questions_attempted</th>
<th>SAS</th>
<th>NPR</th>
<th>ST</th>
<th>GR</th>
</tr>
@foreach ($files as $filedata)
<tr>
<td>{{ $filedata->file_id }}</td>
<td>{{ $filedata->Battery }}</td>
<td>{{ $filedata->No_of_questions_attempted }}</td>
<td>{{ $filedata->SAS }}</td>
<td>{{ $filedata->NPR }}</td>
<td>{{ $filedata->ST }}</td>
<td>{{ $filedata->GR }}</td>
</tr>
@endforeach
</tbody></table>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<!-- include partials.chartjs -->
@include('partials.chartjs')
<script type="text/javascript">
window.svgPDF = () => {
var svg =
document.querySelector('#pie_chart svg'),
xml = new
XMLSerializer().serializeToString(svg),
data = "data:image/svg+xml;base64," + btoa(xml),
img = new Image()
img.onload = function () {
var canvas =
document.createElement('canvas');
var context = canvas.getContext('2d');
canvas.width = this.width;
canvas.height = this.height;
context.drawImage(this, 0, 0 );
window.chartPDF(canvas)
}
img.setAttribute('src', data)
}
</script>
文件标识
电池
未尝试任何问题
SAS
NPR
装货单
GR
@foreach($files作为$filedata)
{{$filedata->file_id}
{{$filedata->Battery}
{{$filedata->没有问题}
{{$filedata->SAS}
{{$filedata->NPR}
{{$filedata->ST}
{{$filedata->GR}
@endforeach
@包括('partials.chartjs')
window.svgPDF=()=>{
var svg=
document.querySelector(“#饼图svg”),
xml=新
XMLSerializer().serializeToString(svg),
data=“data:image/svg+xml;base64,”+btoa(xml),
img=新图像()
img.onload=函数(){
变量画布=
document.createElement('canvas');
var context=canvas.getContext('2d');
canvas.width=this.width;
canvas.height=this.height;
drawImage(this,0,0);
window.chartPDF(画布)
}
img.setAttribute('src',data)
}
您是否尝试过使用返回视图('home')->with('files',$files)->with('filedata',$filedata)代码>?仍然相同错误此Html代码是否在homw页面中?是的,它在主页中,数据也显示在dd()中;您是否在home.blade.php中使用dd(),数据也显示在dd()中。请使用with()或compact()函数在视图中加载多个数组。不要认为它们是函数->带数据(null);我只是为您的问题添加了单独的解决方案相同的问题,,,,,,,,,,,,m使用默认的home.blade.php我的路由是,当我在控制器中使用dd时,输出是:
$file = DB::table('importpdfs')->distinct('filename')->pluck('filename')
->reject(function($v) { return $v === 'Mean'; });
return view('nerds.index', compact('files', 'filedata', 'importpdfs', 'data'));
}
<div class="card-body table-responsive p-0">
<table class="table table-hover" id="table_id">
<tbody><tr>
<th>File_ID</th>
<th>Battery</th>
<th>No_of_questions_attempted</th>
<th>SAS</th>
<th>NPR</th>
<th>ST</th>
<th>GR</th>
</tr>
@foreach ($files as $filedata)
<tr>
<td>{{ $filedata->file_id }}</td>
<td>{{ $filedata->Battery }}</td>
<td>{{ $filedata->No_of_questions_attempted }}</td>
<td>{{ $filedata->SAS }}</td>
<td>{{ $filedata->NPR }}</td>
<td>{{ $filedata->ST }}</td>
<td>{{ $filedata->GR }}</td>
</tr>
@endforeach
</tbody></table>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<!-- include partials.chartjs -->
@include('partials.chartjs')
<script type="text/javascript">
window.svgPDF = () => {
var svg =
document.querySelector('#pie_chart svg'),
xml = new
XMLSerializer().serializeToString(svg),
data = "data:image/svg+xml;base64," + btoa(xml),
img = new Image()
img.onload = function () {
var canvas =
document.createElement('canvas');
var context = canvas.getContext('2d');
canvas.width = this.width;
canvas.height = this.height;
context.drawImage(this, 0, 0 );
window.chartPDF(canvas)
}
img.setAttribute('src', data)
}
</script>