我有一些数据,能够进行简单的过滤。
(defn get-posts-body
[]
(:body @(client/get posts-url api-options)))
(defn get-books
[]
(parse-string (get-books-body) true))
(defn get-non-fiction-books
[]
(filter #(if (= "non-fiction" (:category %)) %) (get-books)))
这工作良好。
我还有另一个数据源,即帖子,我想要将字段转换为 DateTime 类型并进行比较。尽管它不起作用。
(defonce today (.withTimeAtStartOfDay (t/now)))
(defn get-posts-body
[]
(:body @(client/get posts-url api-options)))
(defn get-posts
[]
(parse-string (get-posts-body) true))
(def get-posts-viewed-today
[]
(filter #(if (>= (f/parse :date-time (:last_viewed_at %)) today) %) (get-posts)))
我想要所有“last_viewed_at” DateTime >=今天的 Map。
我正在尝试将 String 类型的 last_viewed_at 转换为 DateTime 并与之比较。
但它无法编译。
在文件 clojure_json_test/core.clj 第 46 行编译 def 时出现语法错误。Too
def 有太多参数。
顺便说一下,我正在使用
(:require [clj-time.core :as t]
[clj-time.format :as f]
;; ... )