Красноречивая вставка или обновление ORM - PullRequest
0 голосов
/ 25 октября 2018

Я работаю над проектом, используя компонент базы данных Laravel Framework.Эта библиотека включает в себя уровень абстракции базы данных (DBAL) с именем «Capsule» и библиотеку объектно-реляционного сопоставления (ORM) с именем «Eloquent».

Я хочу обновить расширение уже в БД, но я также хочу вставитьновое «расширение», если они не существуют.Какой лучший способ сделать это?

Мой код на данный момент:

try {
    $updatedDomainsCount = Capsule::table('tbldomainpricing')
        ->where('extension', $tld)
        ->update(
            [
                'extension' => $tld,
                'autoreg' => 'domenytv',
                'grace_period' => '15',

                 'idprotection' => $idp,
                  'grace_period_fee' => $rea_price,
            ]
        );

    echo "Updated {$updatedDomainsCount} TLD: $tld</br>";
} catch (\Exception $e) {
    echo "I couldn't update domains tld. {$e->getMessage()}";
}   

1 Ответ

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

Используйте метод Eloquent ORM: updateOrCreate, используйте для создания новой записи или обновления существующей.

Красноречивая документация

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