在 Laravel 上使用模态更新数据
Update Data Using Modal on Laravel
我想使用视图模式在 laravel 上创建编辑数据。
但我不知道如何在我的编辑表单上获取一个数据。
我像在另一个页面上编辑数据一样构建控制器(不使用模式)
public function index()
{
$ipsrs = DB::table('ipsrs')->pluck('nama_bagian','id');
$belum_kerjakan = Aduan::with('users')->where('status','Belum Dikerjakan')->get();
$dalam_proses = Aduan::with('users')->where('status','Sedang Dikerjakan')->get();
$selesai = Aduan::with('users')->where('status','Selesai')->get();
return view('admin.admin_dashboard',[
'belum_dikerjakan' => $belum_kerjakan,
'dalam_proses' => $dalam_proses,
'selesai' => $selesai,
'ipsrs' => $ipsrs,
]);
}
public function change_aduan($id)
{
$aduan = Aduan::findOrFail($id);
if (!$aduan)
abort(404);
return view('admin.admin_dashboard',[
'aduan' => $aduan
]);
}
这条路线。 (但我不知道我在哪里用过这条路线?
Route::get('admin_dashboard', 'AdminController@index')->name('admin_dashboard'); // this route for view table
Route::get('change/{id}','AdminController@change_aduan')->name('change_aduan'); // this route "will" showing data on this modals
我的观点
<div class="card-body" align='center'>
<div class="card-body p-0">
<table class="table table-condensed">
<thead align="center">
<tr class="satu">
<th style="width: 3%">#</th>
<th style="width: 10%">Nama Unit</th>
<th style="width: 15%">Tanggal Aduan</th>
<th style="width: 8%">Nama Pengadu</th>
<th style="width: 8%">Tujuan Aduan</th>
<th style="width: 30%">Isi Aduan </th>
{{-- <th>Label</th> --}}
<th style="width: 5%">Status</th>
<th style="width: 5%">Action</th>
</tr>
</thead>
<tbody>
@php
$no=0;
@endphp
@foreach ($belum_dikerjakan as $i)
<tr>
<td> {{++$no}} </td>
<td> {{$i->users->nama_unit}}</td>
<td> {{$i->created_at}} </td>
<td> {{$i->nama_pengadu}} </td>
<td> {{$i->ipsrs->nama_bagian}} </td>
<td> {{$i->aduan}}</td>
<td><span class="badge bg-danger"> Belum Dikerjakan</span></td>
<td><button type="button" class="btn btn-default" data-toggle="modal" data-id="{{$i->id}}" data-target="#modal-lg" > // modals button
Action
</button></td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
<div class="modal fade" id="modal-lg">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title"> Change Status </h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
{{-- Here this Form --}}
{{-- {{$aduan->nama_pengadu}} --}} // this Line is failur
</div>
<div class="modal-footer justify-content-between">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
我不知道下一步该怎么做,在另一个教程中可以使用 {{ $data->name }} 显示此数据,但我认为不能这样做。怎么了,我该如何解决?
我想你已经不远了。我相信您遇到的问题是您试图从 集合 而不是 对象 中提取 name
字段。
在您的 Blade 文件中,这一行:
<td> {{$i->users->nama_unit}}</td>
本质上是在说:对于 $belum_dikerjakan
的这次迭代 ($i
),给我所有的 users
并告诉我 集合的名称 用户。该集合没有 name
字段。因为这个 $belum_dikerjakan
有很多用户,所以你要么需要循环所有这些用户,通过 id 识别特定用户(例如 $i->users->where('id', 1)->first()->nama_unit
),要么随机取第一个:
$i->users->first()->nama_unit
这些示例的作用是,它提取单个 object 用户而不是集合,因此您在 上有字段 name
对象.
这一行:
<td> {{$i->ipsrs->nama_bagian}} </td>
看起来根本不像关系,您可能需要将其重构为 $belum_dikerjakan
上的关系,或者将其从循环中移除并独立使用,但这是一个单独的问题我觉得。
希望对您有所帮助。
我想使用视图模式在 laravel 上创建编辑数据。 但我不知道如何在我的编辑表单上获取一个数据。
我像在另一个页面上编辑数据一样构建控制器(不使用模式)
public function index()
{
$ipsrs = DB::table('ipsrs')->pluck('nama_bagian','id');
$belum_kerjakan = Aduan::with('users')->where('status','Belum Dikerjakan')->get();
$dalam_proses = Aduan::with('users')->where('status','Sedang Dikerjakan')->get();
$selesai = Aduan::with('users')->where('status','Selesai')->get();
return view('admin.admin_dashboard',[
'belum_dikerjakan' => $belum_kerjakan,
'dalam_proses' => $dalam_proses,
'selesai' => $selesai,
'ipsrs' => $ipsrs,
]);
}
public function change_aduan($id)
{
$aduan = Aduan::findOrFail($id);
if (!$aduan)
abort(404);
return view('admin.admin_dashboard',[
'aduan' => $aduan
]);
}
这条路线。 (但我不知道我在哪里用过这条路线?
Route::get('admin_dashboard', 'AdminController@index')->name('admin_dashboard'); // this route for view table
Route::get('change/{id}','AdminController@change_aduan')->name('change_aduan'); // this route "will" showing data on this modals
我的观点
<div class="card-body" align='center'>
<div class="card-body p-0">
<table class="table table-condensed">
<thead align="center">
<tr class="satu">
<th style="width: 3%">#</th>
<th style="width: 10%">Nama Unit</th>
<th style="width: 15%">Tanggal Aduan</th>
<th style="width: 8%">Nama Pengadu</th>
<th style="width: 8%">Tujuan Aduan</th>
<th style="width: 30%">Isi Aduan </th>
{{-- <th>Label</th> --}}
<th style="width: 5%">Status</th>
<th style="width: 5%">Action</th>
</tr>
</thead>
<tbody>
@php
$no=0;
@endphp
@foreach ($belum_dikerjakan as $i)
<tr>
<td> {{++$no}} </td>
<td> {{$i->users->nama_unit}}</td>
<td> {{$i->created_at}} </td>
<td> {{$i->nama_pengadu}} </td>
<td> {{$i->ipsrs->nama_bagian}} </td>
<td> {{$i->aduan}}</td>
<td><span class="badge bg-danger"> Belum Dikerjakan</span></td>
<td><button type="button" class="btn btn-default" data-toggle="modal" data-id="{{$i->id}}" data-target="#modal-lg" > // modals button
Action
</button></td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
<div class="modal fade" id="modal-lg">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title"> Change Status </h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
{{-- Here this Form --}}
{{-- {{$aduan->nama_pengadu}} --}} // this Line is failur
</div>
<div class="modal-footer justify-content-between">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
我不知道下一步该怎么做,在另一个教程中可以使用 {{ $data->name }} 显示此数据,但我认为不能这样做。怎么了,我该如何解决?
我想你已经不远了。我相信您遇到的问题是您试图从 集合 而不是 对象 中提取 name
字段。
在您的 Blade 文件中,这一行:
<td> {{$i->users->nama_unit}}</td>
本质上是在说:对于 $belum_dikerjakan
的这次迭代 ($i
),给我所有的 users
并告诉我 集合的名称 用户。该集合没有 name
字段。因为这个 $belum_dikerjakan
有很多用户,所以你要么需要循环所有这些用户,通过 id 识别特定用户(例如 $i->users->where('id', 1)->first()->nama_unit
),要么随机取第一个:
$i->users->first()->nama_unit
这些示例的作用是,它提取单个 object 用户而不是集合,因此您在 上有字段 name
对象.
这一行:
<td> {{$i->ipsrs->nama_bagian}} </td>
看起来根本不像关系,您可能需要将其重构为 $belum_dikerjakan
上的关系,或者将其从循环中移除并独立使用,但这是一个单独的问题我觉得。
希望对您有所帮助。