Модуль clojure.contrib.sql
имеет функцию create-table
, которая принимает имя таблицы и список спецификаций, например:
(sql/create-table :services
[:id :serial "PRIMARY KEY"]
[:service_name :varchar "NOT NULL"]
[:pass_hash :varchar "NOT NULL"]
[:token :varchar "NOT NULL"])
Если я снова и снова использую одни и те же столбцы,Есть ли способ определить что-то вроде этого?
(def same-columns
[:id :serial "PRIMARY KEY"]
[:service_name :varchar "NOT NULL"]
[:pass_hash :varchar "NOT NULL"]
[:token :varchar "NOT NULL"])
Когда я попытался запустить это в REPL, я получил ошибку, потому что он передает слишком много аргументов def
.