Почему функция laravel delete () получает ошибку?

В моей таблице нет первичного ключа. Я хочу использовать Идентификатор пользователя и cartId вместе.

public function delete($uyeid,$Id){

    $this->getCart($Id)->delete();
}

 public function getCart($Id){
    try {
       $data = getCart::whereCartId($Id)->get();

        return $data;
    } catch(\Exception $e){
        return null;
    }
}

Должен ли я определить 2 столбца как первичный? как?

Как выглядит ваша модель? Как выглядит структура вашей базы данных? Откуда взялся whereCartId?

Christopher Dosin 08.01.2019 11:47

Вы получили $ cartId и использовали $ vartId в запросе, пожалуйста, измените его на $ this-> repo-> getUserCart ($ cartId) -> delete ();

Manoj Patel 08.01.2019 11:49

@ChristopherDosin whereCartId это только что из модели, я делаю это с помощью ide_helper

d.k 08.01.2019 11:57

@ManojPatel Я отредактировал свой вопрос

d.k 08.01.2019 11:57

Я считаю, что вам нужно определить имя столбца с его значением в запросе, например $ this-> repo-> getUserCart ('id', $ cartId) -> delete ();

Manoj Patel 08.01.2019 12:03

все еще та же ошибка :(

d.k 08.01.2019 12:31

Как выглядят ваши отношения? Вы можете показать нам структуру своей таблицы? UserId вошел в систему с идентификатором пользователя?

usrNotFound 09.01.2019 06:16

спасибо я решил с stackoverflow.com/questions/36332005/…

d.k 09.01.2019 06:21
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
8
78
2

Ответы 2

Пожалуйста, обновите ваш deleteNote()

public function deleteNote($uyeid,$cartId){

    $this->repo->getUserCart($cartId)->delete();
}

Измените эту строку в функции getUserCart ():

$data = getUserCart::whereCartId($cartId)->firstOrFail();

в

$data = getUserCart::find($cartId);

//OR

$data = getUserCart::where('CartId',$cartId)->firstOrFail();

Ошибка возникает в предложении где. Так что измените это, и я надеюсь, что это поможет.

Другие вопросы по теме