:card_box: Add more fields into product
This commit is contained in:
		@@ -8,9 +8,11 @@ import (
 | 
			
		||||
type Product struct {
 | 
			
		||||
	cruda.BaseModel
 | 
			
		||||
 | 
			
		||||
	Icon        string                      `json:"icon"` // random id of atttachment
 | 
			
		||||
	Name        string                      `json:"name"`
 | 
			
		||||
	Alias       string                      `json:"alias" gorm:"uniqueIndex"`
 | 
			
		||||
	Description string                      `json:"description"`
 | 
			
		||||
	Previews    datatypes.JSONSlice[string] `json:"previews"` // random id of attachments
 | 
			
		||||
	Tags        datatypes.JSONSlice[string] `json:"tags"`
 | 
			
		||||
 | 
			
		||||
	Meta      ProductMeta      `json:"meta" gorm:"foreignKey:ProductID"`
 | 
			
		||||
@@ -22,7 +24,7 @@ type ProductMeta struct {
 | 
			
		||||
	cruda.BaseModel
 | 
			
		||||
 | 
			
		||||
	Introduction string                      `json:"introduction"`
 | 
			
		||||
	Attachments  datatypes.JSONSlice[string] `json:"attachments"`
 | 
			
		||||
	Attachments  datatypes.JSONSlice[string] `json:"attachments"` // random id of attachments
 | 
			
		||||
 | 
			
		||||
	ProductID uint `json:"product_id"`
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -121,11 +121,13 @@ func updateProduct(c *fiber.Ctx) error {
 | 
			
		||||
	user := c.Locals("nex_user").(*sec.UserInfo)
 | 
			
		||||
 | 
			
		||||
	var data struct {
 | 
			
		||||
		Icon         string   `json:"icon"`
 | 
			
		||||
		Name         string   `json:"name" validate:"required,max=256"`
 | 
			
		||||
		Description  string   `json:"description" validate:"max=4096"`
 | 
			
		||||
		Introduction string   `json:"introduction"`
 | 
			
		||||
		Alias        string   `json:"alias" validate:"required"`
 | 
			
		||||
		Tags         []string `json:"tags"`
 | 
			
		||||
		Previews     []string `json:"previews"`
 | 
			
		||||
		Attachments  []string `json:"attachments"`
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
@@ -138,9 +140,11 @@ func updateProduct(c *fiber.Ctx) error {
 | 
			
		||||
		return fiber.NewError(fiber.StatusBadRequest, err.Error())
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	product.Icon = data.Icon
 | 
			
		||||
	product.Name = data.Name
 | 
			
		||||
	product.Description = data.Description
 | 
			
		||||
	product.Tags = data.Tags
 | 
			
		||||
	product.Previews = data.Previews
 | 
			
		||||
	product.Meta.Introduction = data.Introduction
 | 
			
		||||
	product.Meta.Attachments = data.Attachments
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user