Где я должен написать raw-запрос или запрос, используя построитель запросов вместо того, чтобы записывать его в файл маршрута в Laravel? - PullRequest
0 голосов
/ 30 октября 2018
<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class testing extends Model
{

}

Должен ли я написать все свои запросы в этом классе модели, даже если я просто хочу использовать построитель запросов, не красноречивый?

Каковы хорошие практики для написания необработанных запросов или использования построителя запросов?

Ответы [ 2 ]

0 голосов
/ 30 октября 2018

Вы можете написать свои запросы или сказать красноречивый в вашей модели, отличаясь от другого логического кода

Скажем, например, у вас есть AlbumController

namespace App\Http\Controllers;

use App\Album;
use App\Http\Controllers\Controller;

class AlbumController extends Controller
{
    public function index()
    {
        $albums = Album::get_albums();
        // other logical code
    }
}

А в Album.php есть модель

namespace App;

use Illuminate\Database\Eloquent\Model;

class Album extends Model
{
     public static function get_albums() {
          $albums = Album::get();
          return $albums;
     }
}

А в вашем файле маршрута

Route::post('album', 'AlbumController@index');

Надеюсь, вы поняли!

0 голосов
/ 30 октября 2018

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

<?php
Namespace App\Http\Controllers;
use DB;
Class AbcController extends Controller{
Public function functionName(){
$data=DB::table(‘tableName’)->get();
return view(‘desiredPage’)->with(‘data’, $data);
}
}

перейдите по ссылке для получения дополнительной информации о запросах к базе данных laravel

...