From ed41fde2d8689a5e7fe0bebcf75153afa9a5cf30 Mon Sep 17 00:00:00 2001 From: colorfulberry Date: Tue, 2 Jun 2020 10:29:35 +0800 Subject: [PATCH] feat: add repo link --- models/dataset.go | 14 +++++++++----- templates/explore/dataset_list.tmpl | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/models/dataset.go b/models/dataset.go index fa7e779f8..24bd212a1 100644 --- a/models/dataset.go +++ b/models/dataset.go @@ -5,7 +5,6 @@ import ( "fmt" "sort" - "code.gitea.io/gitea/modules/setting" "code.gitea.io/gitea/modules/timeutil" "xorm.io/builder" ) @@ -60,19 +59,28 @@ func (datasets DatasetList) loadAttributes(e Engine) error { datasetIDs := make([]int64, len(datasets)) for i := range datasets { set[datasets[i].UserID] = struct{}{} + set[datasets[i].RepoID] = struct{}{} datasetIDs[i] = datasets[i].ID } // Load owners. users := make(map[int64]*User, len(set)) + repos := make(map[int64]*Repository, len(set)) if err := e. Where("id > 0"). In("id", keysInt64(set)). Find(&users); err != nil { return fmt.Errorf("find users: %v", err) } + if err := e. + Where("id > 0"). + In("id", keysInt64(set)). + Find(&repos); err != nil { + return fmt.Errorf("find repos: %v", err) + } for i := range datasets { datasets[i].User = users[datasets[i].UserID] + datasets[i].Repo = repos[datasets[i].RepoID] } return nil @@ -331,10 +339,6 @@ func GetOwnerDatasetByID(id int64, user *User) (*Dataset, error) { return nil, errors.New("dataset not fount") } -func (dataset *Dataset) Link() string { - return setting.AppSubURL + "/" + dataset.Repo.FullName() -} - func IncreaseDownloadCount(datasetID int64) error { // Update download count. if _, err := x.Exec("UPDATE `dataset` SET download_times=download_times+1 WHERE id=?", datasetID); err != nil { diff --git a/templates/explore/dataset_list.tmpl b/templates/explore/dataset_list.tmpl index ddb5ee8af..b26a86ecd 100644 --- a/templates/explore/dataset_list.tmpl +++ b/templates/explore/dataset_list.tmpl @@ -24,7 +24,7 @@ {{range .Datasets}}