我想访问我的 Selmer 模板中的当前页面 URL,以便我可以将其传递给编辑页面操作,这样即使在编辑之后,该页面也可以包含返回“调用”页面的链接。
这是我的 Selmer 模板中的模板代码——这看起来不错:
<a href="/photos/_edit/{{p.path}}{% if back %}?back={{back}}{% endif %}"
class="btn btn-warning btn-sm">edit</a>
以下是我在搜索时设置返回值的方式:
(defn photo-search [word req]
(layout/render
"search.html"
{:word word
:photos (db/photos-with-keyword-starting word)
:back (str (:uri req) "?" (:query-string req))
}))
;; ...
(defroutes home-routes
;; ...
(GET "/photos/_search" [word :as req] (photo-search word req))
这工作正常。但是,我还有其他返回照片列表的方法,并且将此代码添加到所有其他方法似乎违反了 DRY 原则。
有没有更简单的方法可以做到这一点,也许使用一些中间件?