diff --git a/kernel/api/template.go b/kernel/api/template.go index 90c770b6d..c706f2eb6 100644 --- a/kernel/api/template.go +++ b/kernel/api/template.go @@ -80,7 +80,12 @@ func renderTemplate(c *gin.Context) { return } - content, err := model.RenderTemplate(p, id) + preview := false + if previewArg := arg["preview"]; nil != previewArg { + preview = previewArg.(bool) + } + + content, err := model.RenderTemplate(p, id, preview) if nil != err { ret.Code = -1 ret.Msg = util.EscapeHTML(err.Error()) diff --git a/kernel/model/file.go b/kernel/model/file.go index 0d5228432..15d29c4ae 100644 --- a/kernel/model/file.go +++ b/kernel/model/file.go @@ -1448,7 +1448,7 @@ func CreateDailyNote(boxID string) (p string, existed bool, err error) { if !gulu.File.IsExist(tplPath) { logging.LogWarnf("not found daily note template [%s]", tplPath) } else { - dom, err = renderTemplate(tplPath, id) + dom, err = renderTemplate(tplPath, id, false) if nil != err { logging.LogWarnf("render daily note template [%s] failed: %s", boxConf.DailyNoteTemplatePath, err) } diff --git a/kernel/model/template.go b/kernel/model/template.go index 2d93529cb..c99098536 100644 --- a/kernel/model/template.go +++ b/kernel/model/template.go @@ -164,11 +164,11 @@ func DocSaveAsTemplate(id, name string, overwrite bool) (code int, err error) { return } -func RenderTemplate(p, id string) (string, error) { - return renderTemplate(p, id) +func RenderTemplate(p, id string, preview bool) (string, error) { + return renderTemplate(p, id, preview) } -func renderTemplate(p, id string) (string, error) { +func renderTemplate(p, id string, preview bool) (string, error) { tree, err := loadTreeByBlockID(id) if nil != err { return "", err @@ -288,8 +288,10 @@ func renderTemplate(p, id string) (string, error) { cloned := av.CloneAttributeView(attrView) if nil != cloned { n.AttributeViewID = cloned.ID - if saveErr := av.SaveAttributeView(cloned); nil != saveErr { - logging.LogErrorf("save attribute view [%s] failed: %s", cloned.ID, saveErr) + if !preview { + if saveErr := av.SaveAttributeView(cloned); nil != saveErr { + logging.LogErrorf("save attribute view [%s] failed: %s", cloned.ID, saveErr) + } } } }