SQLAlchemy - ВСТАВЬТЕ ИЛИ ЗАМЕНИТЕ эквивалентный

Когда вы добавляли контент в разделы с помощью процесса «Настройка» в магазине разработки, который вы показываете на скриншотах, вы не вносили изменений в тему этого магазина разработки - вы просто добавляли контент в базу данных этого магазина разработки. это обрабатывается темой, которую вы создали / установили.

Есть два решения:

1) Воссоздайте все содержимое раздела в магазине вашего клиента.

2) Просто передайте право собственности на созданный вами магазин разработки вашему клиенту. Помимо экономии большого количества времени, это также означает, что Shopify отправит вам ежемесячную абонентскую плату Shopify вашего клиента.

11
задан honzas 2 April 2009 в 08:05
поделиться

3 ответа

Я не думаю (исправьте меня, если я неправ), ВСТАВЛЯЮТ, ИЛИ ЗАМЕНА находится в любом из стандартов SQL; это - SQLite-определенная вещь. Существует СЛИЯНИЕ, но это не поддерживается всеми диалектами также. Таким образом, это не доступно на общем диалекте SQLALCHEMY.

Самое чистое решение состоит в том, чтобы использовать Сессию, как предложено M. Utku. Вы могли также использовать ТОЧКИ СОХРАНЕНИЯ, чтобы сохранить, попробовать: вставка, кроме IntegrityError: затем откатывайте и сделайте обновление вместо этого. Третье решение состоит в том, чтобы записать Вашу ВСТАВКУ с ВНЕШНИМ ОБЪЕДИНЕНИЕМ и оператором Where, который фильтрует на строках с пустыми указателями.

4
ответ дан 3 December 2019 в 05:59
поделиться
Session.save_or_update(model)
6
ответ дан 3 December 2019 в 05:59
поделиться

А как насчет Session.merge ?

Session.merge(instance, load=True, **kw)

Скопируйте состояние экземпляра на постоянный экземпляр с тем же идентификатором.

Если в данный момент с сеансом не связан постоянный экземпляр, он будет загружен. Верните постоянный экземпляр. Если данный экземпляр не сохранен, сохраните копию и верните ее как новый постоянный экземпляр. Данный экземпляр не становится связанным с сеансом. Эта операция выполняется каскадом для связанных экземпляров, если ассоциация отображается с помощью cascade = "merge".

из http://www.sqlalchemy.org/docs/reference/orm/sessions.html

9
ответ дан 3 December 2019 в 05:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: