如何在拉拉维尔(Laravel)同时在拉拉维(Laravel
首先,我的代码在查询时仅使用一个参数可以正常工作,但是当我添加更多参数时,它会开始丢弃错误。
这是myEditController
file:
class AdminEditController extends Controller
{
//edit didalam lihat_datafile
public function edit(Request $request,$id){
$data = lokasipekerjaan::find($id);
$data->mid=$request->mid;
$data->subid=$request->subid;
$data->pekerjaan=$request->pekerjaan;
$data->lokasi=$request->lokasi;
$data->uom=$request->uom;
$data->cut=$request->cut;
$data->fill=$request->fill;
$data->area=$request->area;
$data->tanggal=$request->tanggal;
$data->save();
return redirect()->back();
}
这是我的web.php
:
Route::resource('lokasipekerjaan', AdminEditController::class);
这是我的刀片:
@foreach($data as $datas)
<form action="{{route('lokasipekerjaan.edit',[$datas->id])}}" method="PUT">
<tr class="table-info">
<td> <input type="text" value="{{ $datas->id }}" class="" style="background-color: #E0FFFF;width:40px;height:40px;" name="id" :value="old('id')"> </input> </td>
<td><input id="{{ $datas->mid }}" type="text" value="{{ $datas->mid }}" class="" style="background-color: #E0FFFF;width:40px;height:40px;" name="mid" :value="old('mid')"></td>
<td> <input id="{{ $datas->subid }}" type="text" value="{{ $datas->subid }} " class="" style="background-color: #E0FFFF;width:100px;height:40px;" name="subid" :value="old('subid')"> </td>
<td> <input id="{{ $datas->pekerjaan }}" type="text" value="{{ $datas->pekerjaan }} "class="" style="background-color: #E0FFFF;height:40px;" name="pekerjaan" :value="old('pekerjaan')"> </td>
<td> <input id="{{ $datas->lokasi }}" type="text" value="{{ $datas->lokasi }} " class="" style="background-color: #E0FFFF;height:40px;" name="lokasi" :value="old('lokasi')"> </td>
<td> <input id="{{ $datas->cut }}" type="text" value="{{ $datas->cut }} " class="" style="background-color: #E0FFFF;height:40px;" name="volume" :value="old('cut')"> </td>
<td> <input id="{{ $datas->fill }}" type="text" value="{{ $datas->fill }} " class="" style="background-color: #E0FFFF;height:40px;" name="volume" :value="old('fill')"> </td>
<td> <input id="{{ $datas->area }}" type="text" value="{{ $datas->area }} " class="" style="background-color: #E0FFFF;height:40px;" name="volume" :value="old('area')"> </td>
<td> <input id="{{ $datas->uom }}" type="text" value="{{ $datas->uom }} " class="" style="background-color: #E0FFFF;width:40px;height:40px;" name="uom" :value="old('uom')"> </td>
<td> <input value="{{ $datas->tanggal }} " type="text" value="{{ $datas->tanggal }} " class="" style="background-color: #E0FFFF;width:100px;height:40px;" name="tanggal" :value="old('tanggal')"> </td>
<td>
<input type="hidden" name="_method" value="PUT">
<input type="hidden" name="_token" value="{{csrf_token()}}">
<input type="submit" onclick="return confirm('apakah anda yakin ingin mengedit data ini ?');" class="btn btn-primary" value="Edit"/>@method('PUT')
</form></td>
这是我的控制器:
public function lihatdata(){
if(Auth::id()){
$caridata = $_GET['query'];
$tanggal_dari = $_GET['tanggaldari'];
$tanggal_ke = $_GET['tanggalke'];
$filtersubid = dataacuan::select('subid')->whereNotNull('subid')->distinct()->get();
$data = lokasipekerjaan::when($caridata,function($caridatat,$caridata){
return $caridatat->where('cut','LIKE','%'.$caridata.'%')
->orwhere('fill','LIKE','%'.$caridata.'%')
->orwhere('mid','LIKE','%'.$caridata.'%')
->orwhere('subid','LIKE','%'.$caridata.'%')
->orwhere('lokasi','LIKE','%'.$caridata.'%')
->orwhere('id','LIKE','%'.$caridata.'%')
->orwhere('pekerjaan','LIKE','%'.$caridata.'%')
->groupby('subid')->select(
DB::raw("DATE(tanggal) as tanggal"),
);
})->whereDate('tanggal','>=',$tanggal_dari)
->whereDate('tanggal','<=',$tanggal_ke)->paginate(5);
return view('admin.lihat_data',compact('data','caridata','filtersubid','tanggal_dari','tanggal_ke'));}else{
return view('admin.notfound');
}
}
当我使用此代码添加一些参数时,它开始显示错误
->select(
DB::raw("DATE(tanggal) as tanggal"),
);
})->whereDate('tanggal','>=',$tanggal_dari)
->whereDate('tanggal','<=',$tanggal_ke)
:我用日期过滤过滤效果很好,但是当我开始使用字符串查询时,它在下面显示此错误:
我该如何解决?
谢谢....
At first my code works fine with just one parameter when querying, but when I add more parameters, it start to throw errors.
Here is MyEditController
file:
class AdminEditController extends Controller
{
//edit didalam lihat_datafile
public function edit(Request $request,$id){
$data = lokasipekerjaan::find($id);
$data->mid=$request->mid;
$data->subid=$request->subid;
$data->pekerjaan=$request->pekerjaan;
$data->lokasi=$request->lokasi;
$data->uom=$request->uom;
$data->cut=$request->cut;
$data->fill=$request->fill;
$data->area=$request->area;
$data->tanggal=$request->tanggal;
$data->save();
return redirect()->back();
}
Here is my web.php
:
Route::resource('lokasipekerjaan', AdminEditController::class);
Here is my Blade:
@foreach($data as $datas)
<form action="{{route('lokasipekerjaan.edit',[$datas->id])}}" method="PUT">
<tr class="table-info">
<td> <input type="text" value="{{ $datas->id }}" class="" style="background-color: #E0FFFF;width:40px;height:40px;" name="id" :value="old('id')"> </input> </td>
<td><input id="{{ $datas->mid }}" type="text" value="{{ $datas->mid }}" class="" style="background-color: #E0FFFF;width:40px;height:40px;" name="mid" :value="old('mid')"></td>
<td> <input id="{{ $datas->subid }}" type="text" value="{{ $datas->subid }} " class="" style="background-color: #E0FFFF;width:100px;height:40px;" name="subid" :value="old('subid')"> </td>
<td> <input id="{{ $datas->pekerjaan }}" type="text" value="{{ $datas->pekerjaan }} "class="" style="background-color: #E0FFFF;height:40px;" name="pekerjaan" :value="old('pekerjaan')"> </td>
<td> <input id="{{ $datas->lokasi }}" type="text" value="{{ $datas->lokasi }} " class="" style="background-color: #E0FFFF;height:40px;" name="lokasi" :value="old('lokasi')"> </td>
<td> <input id="{{ $datas->cut }}" type="text" value="{{ $datas->cut }} " class="" style="background-color: #E0FFFF;height:40px;" name="volume" :value="old('cut')"> </td>
<td> <input id="{{ $datas->fill }}" type="text" value="{{ $datas->fill }} " class="" style="background-color: #E0FFFF;height:40px;" name="volume" :value="old('fill')"> </td>
<td> <input id="{{ $datas->area }}" type="text" value="{{ $datas->area }} " class="" style="background-color: #E0FFFF;height:40px;" name="volume" :value="old('area')"> </td>
<td> <input id="{{ $datas->uom }}" type="text" value="{{ $datas->uom }} " class="" style="background-color: #E0FFFF;width:40px;height:40px;" name="uom" :value="old('uom')"> </td>
<td> <input value="{{ $datas->tanggal }} " type="text" value="{{ $datas->tanggal }} " class="" style="background-color: #E0FFFF;width:100px;height:40px;" name="tanggal" :value="old('tanggal')"> </td>
<td>
<input type="hidden" name="_method" value="PUT">
<input type="hidden" name="_token" value="{{csrf_token()}}">
<input type="submit" onclick="return confirm('apakah anda yakin ingin mengedit data ini ?');" class="btn btn-primary" value="Edit"/>@method('PUT')
</form></td>
Here is My Controller:
public function lihatdata(){
if(Auth::id()){
$caridata = $_GET['query'];
$tanggal_dari = $_GET['tanggaldari'];
$tanggal_ke = $_GET['tanggalke'];
$filtersubid = dataacuan::select('subid')->whereNotNull('subid')->distinct()->get();
$data = lokasipekerjaan::when($caridata,function($caridatat,$caridata){
return $caridatat->where('cut','LIKE','%'.$caridata.'%')
->orwhere('fill','LIKE','%'.$caridata.'%')
->orwhere('mid','LIKE','%'.$caridata.'%')
->orwhere('subid','LIKE','%'.$caridata.'%')
->orwhere('lokasi','LIKE','%'.$caridata.'%')
->orwhere('id','LIKE','%'.$caridata.'%')
->orwhere('pekerjaan','LIKE','%'.$caridata.'%')
->groupby('subid')->select(
DB::raw("DATE(tanggal) as tanggal"),
);
})->whereDate('tanggal','>=',$tanggal_dari)
->whereDate('tanggal','<=',$tanggal_ke)->paginate(5);
return view('admin.lihat_data',compact('data','caridata','filtersubid','tanggal_dari','tanggal_ke'));}else{
return view('admin.notfound');
}
}
When I adding Some Parameter using this code it start showing error:
->select(
DB::raw("DATE(tanggal) as tanggal"),
);
})->whereDate('tanggal','>=',$tanggal_dari)
->whereDate('tanggal','<=',$tanggal_ke)
When I filter it with date it work fine but when I start to querying with strings it showing this error below:
How Can i fix that please ?
Thank You....
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
需要命名参数:
还请确保您获得匹配项。
$ datas-&gt; id
可能是空的。当供电时,您可以检查$ data-&gt; total()
如果是0,则意味着当您通过关键字过滤时没有匹配项。编辑:
因此,当逻辑覆盖选择逻辑时,看起来您似乎是您的:
在上面,当您获得
*
之前,您现在不再获得ID字段。您应该添加所需的字段:edit2:
在外部日期范围内,查询中没有括号会生成。您需要将搜索逻辑包装在括号中,否则将检查以下是true的,以及日期范围检查之前的短路。
而不是这样:
将搜索包裹在类似的地方:
The parameter needs to be named:
Also make sure you're getting matches.
$datas->id
is probably null. When paginating you can check$data->total()
if it's 0 that means there's no matches when you're filtering by a keyword.Edit:
So it looks like your when logic overrides the select logic:
In the above, when you before were getting
*
, you now no longer get the id field. You should add the fields which you need:Edit2:
Regarding the outside date range, there's no parenthesis within the query that will get generated. You'd want to wrap the searching logic within parenthesis otherwise the OR's would check whichever is true, and short circuit before the date range check.
Instead of this:
Wrap the search within a where like so:
路由lokasipekerjaan/ {path_parameter} /编辑缺少所需的路径参数。
查找
admin.lihat_data
查看文件的代码片段。 $ params变量可能由空还是空?
The route lokasipekerjaan/{path_parameter}/edit is missing a required path parameter.
Look for code snippets like
on admin.lihat_data
view file. the $params variable may by empty or null?
我想我得到答案是当代码错误时:
这是在工作时:
这是我在代码中删除的内容:
我不知道我的代码是如何工作的...但是,如果有人知道你们背后的理论可以回答。...
但是它真的不起作用...它仍在日期之外显示其他数据。如果有人知道如何完全过滤它并忽略日期参数背后的查询?
谢谢你的帮助...
i think i get the answer this is when the code error:
this when it work:
this is what i remove in my code :
i don't know how my code is working... but if someone know the theory behind that you guys can answer it....
but it doesn't work really what i wanted to... it's still showing the other data outside of the date.if anyone know how to filter it entirely and ignore the query behind the date parameter please ?
thank you for the help guys...