После удаления этой строки таблицы обновите другую таблицу, указав столбцы в laravel. - PullRequest
0 голосов
/ 03 февраля 2019

Как вы видите ниже, у меня есть две таблицы.

1.Posts Table (запишите вход и выход из таблицы)

id  lecture_name    roomkey created_at  updated_at  user_id
1   Ee Vonne Ng     L02     2019-01-22  2019-02-03      1
2   Ee Vonne Ng     L03     2019-01-22  2019-01-23      1

2.key table (keynos)

id  roomkey status  created_at  updated_at
1   L01     0       2019-01-22  2019-02-04 
2   L02     1       2019-01-22  2019-01-22 
3   L03     1       2019-01-22  2019-01-22 
4   L04     0       2019-01-22  2019-02-04 

У меня проблема с тем, когда я хочу удалить запись в сообщениях, да, я успешен, но я хочу, чтобы он также обновил статус keyno до 0, чтобы он действовал так, как этот ключактивный.Но я не знаю, что я пропустил, так как я могу удалить, но я не могу обновить статус keyno.Ошибка не отображается, но мой статус не обновляется.Как кто-нибудь может мне помочь или дать какой-нибудь совет TT

Ниже приведен мой код.

1 = Используемый ключ 0 = не используется

1.Почтой контроллер

 */
public function destroy($id)
{
    $post =  Post::find($id);
    $post->delete();
    if($post->delete()){
        $post = Post::find($id);
        $key = Keyno::all();

        $postroomkey = $post->roomkey;
        Keyno::where('roomkey','=',$postroomkey)
        ->update(['status' => 0]);
    }
}

1 Ответ

0 голосов
/ 03 февраля 2019

Вы запускаете $post->delete(); дважды.

Первый удаляет сообщение, но второй фактически ничего не делает, что означает, что он возвращает false, потому что не может найти сообщение.

Это означает, что ваш код в операторе if фактически не выполняется.Измените его следующим образом:

public function destroy($id)
{
    $post =  Post::find($id);
    $postroomkey = $post->roomkey;
    if($post->delete()){
        $key = Keyno::all();

        Keyno::where('roomkey','=',$postroomkey)
        ->update(['status' => 0]);
    }
}

"Попытка получить свойство 'roomkey' не-объекта"

Это, вероятно, связано с $postбольше не являясь объектом после удаления, извлеките roomkey перед удалением.Обновленный ответ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...