Files
sm-seo-plugin/updates/202610270005_create_golem15_seo_rules.go

40 lines
1.0 KiB
Go

package updates
import (
"github.com/go-gormigrate/gormigrate/v2"
"gorm.io/gorm"
)
// createRules creates golem15_seo_rules: per-URL SEO for exact addresses
// and patterns (D-02), one rule per address and match.
var createRules = []*gormigrate.Migration{
{
ID: "202610270005_create_golem15_seo_rules",
Migrate: func(tx *gorm.DB) error {
return tx.Exec(`CREATE TABLE golem15_seo_rules (
id BIGSERIAL PRIMARY KEY,
url TEXT NOT NULL,
match TEXT NOT NULL DEFAULT 'exact',
title TEXT NOT NULL DEFAULT '',
description TEXT NOT NULL DEFAULT '',
canonical TEXT NOT NULL DEFAULT '',
robots TEXT NOT NULL DEFAULT '',
og_title TEXT NOT NULL DEFAULT '',
og_description TEXT NOT NULL DEFAULT '',
og_image TEXT NOT NULL DEFAULT '',
note TEXT NOT NULL DEFAULT '',
created_at TIMESTAMP(0) NULL,
updated_at TIMESTAMP(0) NULL,
CONSTRAINT golem15_seo_rules_url_match UNIQUE (url, match)
)`).Error
},
Rollback: func(tx *gorm.DB) error {
return tx.Exec(`DROP TABLE IF EXISTS golem15_seo_rules`).Error
},
},
}
func init() {
Register(createRules...)
}