Skip to content
The package allows you to access data through the base car by model
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src
README.md
composer.json

README.md

База автомобилей для Laravel

StyleCI

Данный пакет позволяет удобно использовать базу данных автомобилей в ваших проектах, реализовывать поисковые подсказки, привязку автомобиля к вашим моделям и т.д.

В пакет входит только пример структуры базы, сама база автомобилей не входит в пакет, а приобретается отдельно на сайте https://auto.basebuy.ru/.

На данный момент пакет не поддерживает характеристики автомобилей и REST API базы данных транспортных средств Basebuy.ru

Сожержание

  • Установка
    • Импорт базы
  • Использование

Установка

Вы можете установить данный пакет с помощью oomposer:

composer require bigperson/auto-base-buy

Ипорт базы автомобилей

Сначала необходимо создать необходимые таблицы в базе данных, для этого импортируйте файлы миграций из пакета используя artisan:

 php artisan vendor:publish --tag=migrations --provider="Bigperson\AutoBaseBuy\AutoBaseBuyServiceProvider"

После чего необходимо применить миграции:

php artisan migrate

Далее необходимо импортировать seeds:

 php artisan vendor:publish --tag=seeds --provider="Bigperson\AutoBaseBuy\AutoBaseBuyServiceProvider"

И перегененрировать autoload.php: composer dump-autoload

В database/csv/* создадутся csv файлы для иморта. Их необходимо будет заменить на оригинальные, после покупки на https://auto.basebuy.ru/.

Далее необходимо применить seeds:

php artisan db:seed --class=AutoBusyBuySeeder

Использование

Использовать пакет достаточно просто. Вы можете вызывать модели в контроллерах:

namespace App\Http\Controllers;

use Bigperson\AutoBaseBuy\Models\CarMark;

class Controller
{
    protected function show($id){

        $mark = CarMark::findOrFail($id);
        
    }
}

Связывать свои модели с автомобилями по марке, модели, серии, и т.д., предварительно конечно нужно определиться с типом связи и создать необходимые таблицы или столбцы в таблицах ваших моделей:

namespace App;

use Bigperson\AutoBaseBuy\Models\CarModification;

class User extends Model
{
     public function car()
     {
         return $this->belongsTo(CarModification::class, 'id_car_modification');
     }
}

Также вы можете можете переопределить модели и расширить их, например добавив аксессор:

namespace App;

use Bigperson\AutoBaseBuy\Models\CarModification as BaseCarModification;

class CarModification extends BaseCarModification
{
    /**
     * Получить полное название автомобиля, включая марку, модель, годы выпуска, серию
     * @return string
     */
    public function getFullNameAttribute()
    {
        $string = $this->carModel->carMark->name;
        $string .= ' '.$this->carModel->name;
        $string .= ' '.$this->carSerie->name;
        $string .= ' '.$this->carSerie->carGeneration->name;
        $string .= ' ('.$this->carSerie->carGeneration->year_begin.'-'.$this->carSerie->carGeneration->year_end.')';
        $string .= ' '.$this->name;

        return $string;
    }
}

##Лицензия

Данный пакет (не включая базу данных) является открытым кодом под лицензией MIT license.

You can’t perform that action at this time.