Size: a a a

2020 January 14

V

Vlad in Python Flask
Что-то немного запутался, есть обычная связь m2m в модели (Home.dogs),
как добавить собаку в дом зная её PK и не получая модели, только через сырой запрос?
источник

АП

Агент Печенька in Python Flask
Vlad
Что-то немного запутался, есть обычная связь m2m в модели (Home.dogs),
как добавить собаку в дом зная её PK и не получая модели, только через сырой запрос?
session.add(Dog(house_id=42, ...))
источник

АП

Агент Печенька in Python Flask
А блин, там м2м.
источник

АП

Агент Печенька in Python Flask
dog = Dog()
session.add(dog)
session.flush()
session.add(DogHomeAssosiation(home_id=, dog=dog)
session.commit()
источник

АП

Агент Печенька in Python Flask
Агент Печенька
dog = Dog()
session.add(dog)
session.flush()
session.add(DogHomeAssosiation(home_id=, dog=dog)
session.commit()
источник

АП

Агент Печенька in Python Flask
Если у тебя м2м на Core вставка иначе пишется само собой.
источник

V

Vlad in Python Flask
а можешь пояснить момент, в доке сказано, что не советуют использовать модель для м2м DogHomeAssosiation, почему?
источник

АП

Агент Печенька in Python Flask
А хз, я сам не понимаю.
источник

АП

Агент Печенька in Python Flask
Видимо чтобы не плодить сущностей, но я тут ничего плохого не вижу, наоборот удобно.
источник

V

Vlad in Python Flask
Как всегда спасибо :)
источник

V

Vlad in Python Flask
@vlade11115 а можешь ещё прояснить момент про исключения,
например под IntegrityError попадают многие исключения как "Уникальность" так и "несуществующий FK"

как правильно можно разделить эти ситуации? А то сейчас выходит общая куча

       try:

           db.session.add(dog)

           # Сохраняем изменения
           db.session.commit()
       except IntegrityError as e:
           return bad_request('Данные уже добавлены.')
источник

АП

Агент Печенька in Python Flask
Нет не могу.
источник

АП

Агент Печенька in Python Flask
Я сам хз.
источник

V

Vlad in Python Flask
SQLAlchemy для меня очень странно их враппит)
источник

АП

Агент Печенька in Python Flask
Матчу их по тексту, говно но работает.
источник

АП

Агент Печенька in Python Flask
Vlad
SQLAlchemy для меня очень странно их враппит)
Ну она просто передаёт то что база отдала.
источник

V

Vlad in Python Flask
блин, "Матчу их по тексту, говно но работает."
я даже не стал об этом писать, ибо первое что пришло :(
источник

V

Vlad in Python Flask
Агент Печенька
Ну она просто передаёт то что база отдала.
передаёт только в одном исключении большую часть...
источник

АП

Агент Печенька in Python Flask
Ну что ошибка уникальности что онибка пк это действительно интегрити еррор.
источник

АП

Агент Печенька in Python Flask
Что уникальность что пк это констрейнт, просто форма записи разная.
источник