gorm에서 결과 테이블 열 이름을 'many'에서 'many'로 변경하는 방법

PHPz
풀어 주다: 2024-02-10 13:45:08
앞으로
1039명이 탐색했습니다.

如何在 gorm 中将结果表的列名从“多”更改为“多”

데이터베이스 작업에 gorm을 사용할 때 결과 테이블의 열 이름을 "many"에서 "many"로 변경해야 하는 경우가 있습니다. 이렇게 하면 코드가 더 명확하고 읽기 쉬워지며 코드의 유지 관리 가능성이 향상됩니다. 그렇다면 gorm에서 이 기능을 어떻게 구현할까요? 이 기사에서는 PHP 편집기 Strawberry가 결과 테이블의 열 이름을 쉽게 수정할 수 있는 간단하고 효과적인 방법을 공유합니다.

질문 내용

나는 typeorm을 사용하여 Nestjs로 많이 놀았고 지금은 golang과 gorm을 사용하는 법을 배우고 있습니다. go를 위해 Nestjs에서 시스템을 다시 구축 중인데 다대다 관계를 사용하는 데 문제가 있습니다. 이미 프로덕션에 있고 채워져 있는 데이터베이스로 작업하고 있으므로 문제가 발생하지 않도록 다른 프로젝트와 동일하게 구조를 모델링해야 합니다.

다양한 방식으로 관련된 두 개의 테이블이 있습니다. playlistsgenres입니다. 프로덕션 데이터베이스에서는 다음 필드가 포함된 playlists_genres > 테이블을 생성합니다.

이러한 필드는 playlistsidgenresid

와 유사합니다.

golang 프로젝트에서 테이블의 m2m 결과는 다음과 같습니다.

생성된 필드가 필요한 필드와 다릅니다. 프로덕션 데이터베이스에 대한 식별자(playlistsidgenresid)를 생성해야 합니다.

내 관계 코드는 다음과 같습니다:

으아아아

그리고

으아아아

많이 찾아봤지만 필요한 이름이 있는 열이 포함된 중간 테이블을 수동으로 만들고 이를 하나에서 여러 개로 연결하는 것 외에는 이러한 열의 이름을 변경하는 방법을 찾지 못했습니다.

이 문제를 해결하도록 도와주실 수 있나요? 테이블을 수동으로 생성하지 않고도 이 작업을 수행할 수 있습니까? 감사해요!

해결 방법

안타깝게도 목표를 달성할 수 있는 유일한 방법은 PlaylistGenre라는 구조를 만들고 여기서 열 이름을 재정의하는 것입니다.
Gorm 규칙을 사용하면 데이터베이스에 생성된 외래 키 제약 조건에 대해서만 작업할 수 있습니다. 자동으로 생성된 조인 테이블의 실제 열 이름을 덮어쓸 가능성은 없습니다.
gorm 注释中,您可以使用这些属性来处理外键:foreignKeyreferencesjoinForeignKeyjoinReferences에서.

단, column를 사용해야 하는데 여기서는 불가능합니다.

이 접근 방식의 예가 필요하면 알려주세요!

위 내용은 gorm에서 결과 테이블 열 이름을 'many'에서 'many'로 변경하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!