首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel中的查询方法

问Laravel中的查询方法
EN

Stack Overflow用户
提问于 2015-04-04 10:56:03
回答 1查看 111关注 0票数 1

我在想拉拉维尔的事。我有一个型号的‘电话’和一个方法计数产品()。每个型号的“手机”都有很多“产品”。

我用countproducts()来计算手机拥有的产品。

代码语言:javascript
复制
 $phones=Phone::where(function($query){
  if(isset($min_weight) && isset($max_weight)){
      $query-> where('weight','>=',$min_weight);
      $query-> where('weight','<=',$max_weight);
  }

我现在就是这样查询电话的。

是否可以只查询和显示手机,比如50多个产品??

提前感谢

编辑: Phone.php

代码语言:javascript
复制
<?php namespace App;

use Illuminate\Database\Eloquent\Model;

class Phone extends Model {

    public function productnum()
    {
        return $this->hasMany('App\Product');
    }

    public function productStore()
    {
        return $this->hasOne('App\Store');
    }

    public function category(){
        return $this->belongsTo('App\Category');
    }

    public function minprice(){
        return $this->productnum->min('newprice');
    }

    public function maxprice(){


         return $this->productnum->max('newprice');
        }
    }

Product.php

代码语言:javascript
复制
<?php namespace App;

use Illuminate\Database\Eloquent\Model;

class Product extends Model {

    public function manufacturer(){
        return $this->hasOne('manufacturer');
    }

    public function phone(){
        return $this->belongsto('App\Phone');
    }

    public function category(){
        return $this->belongsto('App\Category');
    }
    public function store(){
        return $this->belongsto('App\Store');
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-04 11:15:54

直接从文档。

代码语言:javascript
复制
$phones = Phone::has('products', '>=', 50)->get();

您应该能够将您的get() where()子句放在前面。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29445568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档