Как я заставляю NHibernate удалить дочерние ссылки, когда я удаляю родителя?

Для потомков: когда Дженкинс работает в кластере Kubernetes со всей необходимой атрибутикой (агентами Kubernetes pod и т. Д.), Нет простого способа сделать это. Вы можете ожидать, что агенты получат настройки учетных данных github в Jenkins, но они этого не делают.

Быстрый способ - создать секрет, содержащий токен доступа github, и смонтировать его как env var GITHUB_TOKEN в контейнере golang, используемом в модуле выполнения. Вы должны будете хранить этот секрет или использовать несколько секретов, если у вас есть конвейеры с множественными потребностями.

Затем вам нужно выполнить:

git config --global url."https://${GITHUB_TOKEN}:x-oauth-basic@github.com/<myproject>".insteadOf "https://github.com/24metrics" перед выполнением build / get.

5
задан Cœur 7 August 2017 в 16:14
поделиться

3 ответа

JMCD

Ваш второй подход:

Другая альтернатива должна повредить many-many отношения с классом соединения в середине, какой nHiberate смог бы определить отношения отцов и детей, и каскад должен работать.

на самом деле, что nHibernate люди рекомендуют в их документации.

Не используйте экзотические отображения ассоциации.

Хорошие варианты использования для реальные many-many ассоциации редки. Большую часть времени Вам нужна дополнительная информация, хранившая в "таблице ссылки". В этом случае намного лучше использовать две one-many ассоциации для класса промежуточного канала. На самом деле мы думаем, что большинство ассоциаций является one-many и many-one, необходимо быть осторожными, когда использование любой другой ассоциации разрабатывает и спрашивает себя, если это действительно необходимо.

Используя две one-many ассоциации добавляет гибкость для легкого добавления других атрибутов к "подписке", таких как предпочтения уведомления той конкретной подписки.

2
ответ дан 15 December 2019 в 06:36
поделиться

изменение

cascade="all"

кому:

cascade="all-delete-orphan"

Ссылка

0
ответ дан 15 December 2019 в 06:36
поделиться

Так как отношение в наборе является many-many, nHibernate не может сказать, какой конец отношений является ребенком и который является родителем и самым быстрым способом для меня достигнуть того, что я хотел, должен был только записать некоторый SQL, который я отправил через свой репозиторий, который удалил соответствующие ленты новостей из набора и затем удалил родительскую ленту новостей. В следующий раз, когда набор гидратировался, изменения были отражены.

Другая альтернатива должна повредить many-many отношения с классом соединения в середине, какой nHiberate смог бы определить отношения отцов и детей, и каскад должен работать.

1
ответ дан 15 December 2019 в 06:36
поделиться
Другие вопросы по тегам:

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