SQLSTATE [42S22]: столбец не найден: 1054 Неизвестный столбец '2' в 'on clause' - PullRequest
0 голосов
/ 11 июля 2020
 public function show($id)
{
    return view('admin.Accueil.accueil', [
        'menus' => Menu::where('parent_id' , NULL)->with('sousMenu')->get(),
        'categories' => DB::table('menus')
            ->join('contents', 'contents.menu_id',  $id)
            ->select('contents.title', 'menus.title As M_title' )
            ->get()
    ] );
}

Это выполненный запрос. Мне нужно удалить обратные кавычки вокруг значения.

select 
    `contents`.`title`, 
    `menus`.`title` as `M_title` 
from 
    `menus` 
inner join `contents` on `contents`.`menu_id` = `2`

Ответы [ 2 ]

1 голос
/ 11 июля 2020

Вам не хватает условия JOIN в вашем SQL. Вам нужно поставить условие соединения.

Предположим, у вас есть столбец menu_id в таблице содержимого. Ваш SQL должен выглядеть как

select 
    `contents`.`title`, 
    `menus`.`title` as `M_title` 
from 
    `menus` 
inner join `contents` on `menus`.id = `contents`.`menu_id`
where `contents`.`menu_id` = `2`
0 голосов
/ 11 июля 2020

Вы используете неправильное условие в своем запросе на соединение. Ваш запрос должен быть

public function show($id)
{
    return view('admin.Accueil.accueil', [
        'menus' => Menu::where('parent_id' , NULL)->with('sousMenu')->get(),
        'categories' => DB::table('menus')
            ->join('contents', 'contents.menu_id', 'menus.id')
            ->select('contents.title', 'menus.title As M_title' )
            ->where('menus.id',$id)
            ->get()
    ] );
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...