PHP запустить необработанный запрос SQL в красноречивой моделиPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 PHP запустить необработанный запрос SQL в красноречивой модели

Сообщение Anonymous »

Я пытаюсь использовать красноречивый ORM от Laravel в моем собственном устаревшем проекте. У меня есть модели, настройка, и красноречивая работает нормально, но я не могу понять, как запустить необработанный SQL-запрос, используя элегантное соединение базы данных внутри модели. Мне сейчас нужно запускать необработанные запросы SQL, пока я не смогу рефактор всей кодовой базы, чтобы использовать ORM. < /P>

namespace App\Providers;

use Illuminate\Database\Capsule\Manager;
use League\Container\ServiceProvider\AbstractServiceProvider;

class DatabaseServiceProvider extends AbstractServiceProvider
{

protected $provides = [
Manager::class
];

public function register()
{

$container = $this->getContainer();

$config = $container->get('config');

$config = $config->get('db.mysql');

$capsule = new Manager;

$capsule->addConnection([
$config
]);

$capsule->setAsGlobal();
$capsule->bootEloquent();

$container->share(Manager::class, function () use ($capsule){
return $capsule;
});

}

}
< /code>

Теперь в моей модели у меня есть следующее: < /p>

namespace App\Models;

use Illuminate\Database\Eloquent\Model as Eloquent;

class User extends Eloquent
{
protected $table = '_users';
}
< /code>

Тогда я пытаюсь вызвать эту модель в моем контроллере: < /p>

namespace App\Controllers;

use App\Views\View;
use App\Models\User;
use Psr\Http\Message\RequestInterface;
use Psr\Http\Message\ResponseInterface;

class HomeController
{

protected $view;

public function __construct(View $view)
{
$this->view = $view;
}

public function index(RequestInterface $request, ResponseInterface $response)
{
$user = User::find(1);

dump($user);

}
}
< /code>

Так что все работает хорошо, но я не могу понять, как запустить необработанный запрос внутри модели? Очевидно, что ниже не сработает, но я хочу что -то подобное, создавая новую функцию и возвращает результат: < /p>

Модель: < /p>

public function customQuery()
{
$query = 'SELECT * FROM _users';
return $query;
}
< /code>

контроллер: < /p>

$user = new User;
$user->customQuery();


Подробнее здесь: https://stackoverflow.com/questions/513 ... uent-model
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»