Я создал плагин с помощью Builder.
Есть 2 модели:
Я пытается создать 3 независимых фильтра во внешнем интерфейсе, чтобы пользователи могли фильтровать список поставщиков по имени и их местоположению.
Это моя модель поставщика
<?php namespace JacobFeeley\Matrix\Models;
use Model;
/**
* Model
*/
class Provider extends Model
{
use \October\Rain\Database\Traits\Validation;
use \October\Rain\Database\Traits\SoftDelete;
protected $dates = ['deleted_at'];
/**
* @var string The database table used by the model.
*/
public $table = 'jacobfeeley_matrix_providers';
/**
* @var array Validation rules
*/
public $rules = [
];
public $jsonable = [
'contacts',
'courses'
];
public $belongsTo = [
'location' => 'JacobFeeley\Matrix\Models\Location'
];
public function scopeApplyTitle($query, $title)
{
return $query->where('title', $title);
}
public function scopeApplyLocation($query, $location)
{
return $query->where('location', $location);
}
}
Модель моего местоположения
<?php namespace JacobFeeley\Matrix\Models;
use Model;
/**
* Model
*/
class Location extends Model
{
use \October\Rain\Database\Traits\Validation;
use \October\Rain\Database\Traits\SoftDelete;
protected $dates = ['deleted_at'];
/**
* @var string The database table used by the model.
*/
public $table = 'jacobfeeley_matrix_locations';
/**
* @var array Validation rules
*/
public $rules = [
];
public $hasMany = [
'providers' => 'JacobFeeley\Matrix\Models\Providers',
'courses' => 'JacobFeeley\Matrix\Models\Courses'
];
public function scopeApplyTitle($query, $title)
{
return $query->where('title', $title);
}
public function scopeApplyProvider($query, $provider)
{
return $query->where('provider', $provider);
}
}
}
Теперь я могу использовать это в качестве примера, чтобы получить список всех провайдеров в Лондоне:
Provider::applyLocation('London')->get();
Что я не знаю, как это сделать, это заполнить 2 выпадающих списка веб-интерфейса
- Первый со всеми провайдерами
- Второй со всеми локациями
Вот мой компонент
<form>
<div class="form-group row">
<div class="form-group col-md-4">
<select data-request="" class="form-control s2">
<option selected disabled>Select Provider</option>
</select>
</div>
<div class="form-group col-md-4">
<select data-request="" class="form-control s2">
<option selected disabled>Select Location</option>
</select>
</div>
<div class="form-group col-md-4">
<select data-request="" class="form-control s2">
<option selected>Select Course</option>
</select>
</div>
</div>
</form>
Буду признателен, если кто-нибудь сможет помоги мне с кодом