本文整理汇总了PHP中app\Product::queryable方法的典型用法代码示例。如果您正苦于以下问题:PHP Product::queryable方法的具体用法?PHP Product::queryable怎么用?PHP Product::queryable使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类app\Product
的用法示例。
在下文中一共展示了Product::queryable方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: index
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$products = Product::queryable()->mine()->get();
return view('products.index', compact('products'));
}
示例2: related
/**
* Select related products.
*
* @param int $count
* @return Collection
*/
public function related($count = 3)
{
//select products from the same subcategory
$related = Product::queryable()->notMine()->whereHas('subcategory', function ($q) {
$q->where('name', $this->subcategory->name);
})->whereNotIn('id', [$this->id])->orderBy('views', 'desc')->take($count)->get();
//if not enough, add products from the same category
if ($related->count() < $count) {
$used = array_merge([$this->id], $related->lists('id')->toArray());
$cat = Product::queryable()->notMine()->whereHas('subcategory.category', function ($q) {
$q->where('name', $this->category->name);
})->whereNotIn('id', $used)->orderBy('views', 'desc')->take($count - $related->count())->get();
$related = $related->merge($cat);
}
//if still not enough, add any popular products
if ($related->count() < $count) {
$used = array_merge([$this->id], $related->lists('id')->toArray());
$cat = Product::queryable()->notMine()->whereNotIn('id', $used)->orderBy('views', 'desc')->take($count - $related->count())->get();
$related = $related->merge($cat);
}
return $related;
}
示例3: comment
public function comment()
{
$input['product'] = Input::get('product');
$input['text'] = Input::get('text');
$input['check'] = Input::get('check');
$product = Product::queryable()->findOrFail($input['product']);
if (Hash::check($product->slug, $input['check'])) {
$comment = new Comment();
$comment->product_id = $input['product'];
$comment->writer = Auth::user()->id;
$comment->message = $input['text'];
$comment->save();
}
$comments = $product->comments;
return view('products.comments', compact('comments'));
}