在 Mongo Laravel 中按价格排序
Posted
技术标签:
【中文标题】在 Mongo Laravel 中按价格排序【英文标题】:Sorting by price in Mongo Laravel 【发布时间】:2021-11-12 06:39:33 【问题描述】:尝试根据价格对资产进行排序。
blade.php
<form action="/assets/search/" method="GET" class="form-inline">
@csrf
<div class="searchByPrice pt-3">
<p class="font-weight-bold">Search By Price</p>
<label for="price">Volume</label>
<input type="range" min="0" max="500000" id="price" step="100" name="price"
oninput="outputUpdate(value)">
<output for="price" id="volume">250000</output>
<script>
function outputUpdate(vol)
document.querySelector('#volume').value = vol;
</script>
</div>
</form>
控制器
public function show(Request $request, $_id)
$query = Asset::query();
if ($p = $request->price)
$query->where('price', '<', $p);
$assets = $query->get();
return view('assets::assets',compact('assets'));
dd();
DD($request->price);
我没有得到想要的结果。任何解决方案?或者在 Laravel mongo 中有没有其他按价格排序的解决方案?
【问题讨论】:
dd($request->price)的值是多少; 它的值来自范围 可能是因为我在输出中得到了一个字符串?如果是,那么如何转换? 我想看看值是什么,“它的值来自范围”,我不知道它是如何格式化的。 我最后附上了一张有问题的截图 【参考方案1】:我做错的是我需要在 if() 语句中返回查询。像这样
public function show(Request $request, $_id)
$query = Asset::query();
if ($p = $request->price)
$query->where('price', '<', $p);
$assets = $query->get();
return view('assets::assets',compact('assets'));
【讨论】:
以上是关于在 Mongo Laravel 中按价格排序的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Laravel 5.1 中按多列对 Illuminate Collection 进行排序?