如何在搜索引擎中将“字段ID”与“字段名称”相关联?

时间:2018-12-31 03:56:22

标签: laravel vue.js

我将尝试使自己理解,我有一个搜索引擎,该引擎可以过滤表的数据。该表(“ muestras”)与“ remitentes”表相关。因此,在我的表“ muestras”中,我有一个字段“ remitente_id”来关联这两个表。 问题是,在搜索引擎中,我可以放置字段“ remitente_id”并放置数字以进行搜索,但是从逻辑上讲,我无法按我要查找的“ remitentes”的名称进行搜索。事实是我不知道该怎么做。 如果您能帮助我,我将非常感谢,谢谢

buscador.vue:

<div class="col-md-6">
      <div class="input-group">
        <select class="form-control col-md-3" v-model="criterio">
           <option value="numero">Número</option>
           <option value="muestra">Muestra</option>
           <option value="identificacion">Identificación</option>
           <option value="remitente_id">Remite</option>
         </select>
           <input type="text" v-model="buscar" @keyup.enter="listarMuestra(1,buscar,criterio)" class="form-control" placeholder="Ingresar Dato a Buscar">
           <button type="submit" @click="listarMuestra(1,buscar,criterio)" class="btn btn-primary"><i class="fa fa-search"></i> Buscar</button>
        </div>
    </div>

MuestraController.php:

if ($buscar=='') {
    $muestras = DB::table('muestras')
        ->join('departamentos', 'departamentos.id', '=', 'muestras.departamento_id')
        ->join('remitentes', 'remitentes.id', '=', 'muestras.remitente_id')
        ->select('muestras.numero', 'muestras.matriz','muestras.tipo_muestra','muestras.muestra','muestras.identificacion','muestras.aceptada','muestras.cargada','departamentos.departamento as departamento', 'remitentes.nombre as nombre_remitente')
        ->orderBy('muestras.id', 'DESC')->paginate(10);
} else {
    $muestras = DB::table('muestras')
        ->join('departamentos', 'departamentos.id', '=', 'muestras.departamento_id')
        ->join('remitentes', 'remitentes.id', '=', 'muestras.remitente_id')
        ->select('muestras.numero', 'muestras.matriz','muestras.tipo_muestra','muestras.muestra','muestras.identificacion','muestras.remitente_id','muestras.aceptada','muestras.cargada','departamentos.departamento as departamento', 'remitentes.nombre as nombre_remitente')
        ->where('muestras.'.$criterio, 'like', '%'. $buscar . '%')
        ->orderBy('muestras.id', 'DESC')->paginate(10);                
}

0 个答案:

没有答案