mirror of
https://git.vectorsigma.ru/public/photoview.git
synced 2026-08-03 21:09:05 +00:00
Replace database, mostly album related
This commit is contained in:
@@ -1,48 +1,19 @@
|
||||
package models
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
type Album struct {
|
||||
AlbumID int
|
||||
gorm.Model
|
||||
Title string
|
||||
ParentAlbum *int
|
||||
OwnerID int
|
||||
Owner User
|
||||
Path string
|
||||
PathHash string
|
||||
}
|
||||
|
||||
func (a *Album) ID() int {
|
||||
return a.AlbumID
|
||||
}
|
||||
|
||||
func (a *Album) FilePath() string {
|
||||
return a.Path
|
||||
}
|
||||
|
||||
func NewAlbumFromRow(row *sql.Row) (*Album, error) {
|
||||
album := Album{}
|
||||
|
||||
if err := row.Scan(&album.AlbumID, &album.Title, &album.ParentAlbum, &album.OwnerID, &album.Path, &album.PathHash); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return &album, nil
|
||||
}
|
||||
|
||||
func NewAlbumsFromRows(rows *sql.Rows) ([]*Album, error) {
|
||||
albums := make([]*Album, 0)
|
||||
|
||||
for rows.Next() {
|
||||
var album Album
|
||||
if err := rows.Scan(&album.AlbumID, &album.Title, &album.ParentAlbum, &album.OwnerID, &album.Path, &album.PathHash); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
albums = append(albums, &album)
|
||||
}
|
||||
|
||||
rows.Close()
|
||||
|
||||
return albums, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user