GORM은 SQL을 사용하는 IIF 기능을 지원합니까?
P粉547362845
2023-09-01 16:06:17
<p>과제용 테이블, 해결용 테이블, 학생용 테이블이 있습니다.
모든 과제를 검색하고 각 과제에 대해 현재 로그인한 학생이 과제를 시도했는지 여부를 보여주는 "플래그"를 추가하고 싶습니다. </p>
<p>다음을 시도해 보았습니다. </p>
<pre class="brush:golang;toolbar:false;">가져오기(
"fmt"
"gorm.io/gorm"
"인코딩/json"
"github.com/my_organisation/myorg-repo/db"
)
var 데이터베이스 *gorm.DB
var 솔루션[]db.Solution
var listOfAsnmtIDs []uint
func myfuncn (w http.ResponseWriter, r *http.Request){
//...
_ = 데이터베이스.테이블("솔루션").Where("pupil_id = ?",
학생.ID).Select("할당_ID").Find(&솔루션)
for _, 솔루션 := 범위 솔루션 {
listOfAsnmtIDs = 추가(listOfAsnmtIDs, 솔루션.AssignmentID)
}
response := 데이터베이스.Table("할당").Select(`id,created_at, IIF((id IN ?), '시도', '시도하지 않음') as 시도됨`, listOfAsnmtIDs).Find(&allAssignments)
response.RowsAffected 1 {
responseToClient(w, 404, nil, "할당을 찾을 수 없음")
반품
}
//...
}
매개변수만 나열하면 됩니다. 이와 유사합니다
으아악