私は Clojure を初めて使用し、データの反復処理に問題があります。
私が書いたコードは以下の通りです:
(defn save-monthly-targets
"Parse Monthly Targets Data and Save"
[monthlyTargets]
(println "Save Monthly " monthlyTargets)
(if (first monthlyTargets)
(let [month (first monthlyTargets :month)
year (first monthlyTargets :year)
name (first monthlyTargets :name)]
(do
(println "Calling Save Method" month)
(users/set-monthly-target month year name)
(save-monthly-targets (rest monthlyTargets))))))
関数を呼び出すと:
(save-monthly-targets [
{:month "May", :year "2021", :target "1200"},
{:month "May", :year "2016", :target "1200"}
])
(if (first monthTargets) ステートメントで間違った数の引数エラーが発生します。
例外は次のとおりです。
ArityException 間違った数の引数 (2) が渡されました: core/first clojure.lang.AFn.throwArity
誰かがここで間違っていることを指摘できますか?
どうもありがとうございました。