47 lines
1011 B
JavaScript
47 lines
1011 B
JavaScript
const mongoose = require('mongoose')
|
|
|
|
const settingSchema = new mongoose.Schema(
|
|
{
|
|
key: {
|
|
type: String,
|
|
required: true,
|
|
unique: true,
|
|
trim: true,
|
|
},
|
|
category: {
|
|
type: String,
|
|
default: 'search',
|
|
},
|
|
pageKey: {
|
|
type: String,
|
|
required: true,
|
|
trim: true,
|
|
},
|
|
title: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
description: {
|
|
type: String,
|
|
},
|
|
searchMethod: {
|
|
type: String,
|
|
enum: ['typesense', 'mongo'],
|
|
default: 'mongo',
|
|
},
|
|
extraConfig: {
|
|
type: mongoose.Schema.Types.Mixed,
|
|
default: {},
|
|
},
|
|
},
|
|
{
|
|
timestamps: true,
|
|
}
|
|
)
|
|
|
|
settingSchema.index({ key: 1 }, { unique: true })
|
|
settingSchema.index({ pageKey: 1 })
|
|
|
|
const Setting = mongoose.model('Setting', settingSchema)
|
|
module.exports = Setting
|