diff --git a/src/core/class/column.lisp b/src/core/class/column.lisp index e4025f9..1c6f7e8 100644 --- a/src/core/class/column.lisp +++ b/src/core/class/column.lisp @@ -69,14 +69,7 @@ (push (intern (symbol-name name) :keyword) (getf rest-initargs :initargs))) - (let ((class (apply #'call-next-method class rest-initargs))) - (unless (slot-boundp class 'col-type) - (if (or (ghost-slot-p class) - (slot-value class 'references)) - (setf (slot-value class 'col-type) nil) - (error 'col-type-required - :slot class))) - class)) + (apply #'call-next-method class rest-initargs)) (defgeneric table-column-references-column (column)) diff --git a/t/class.lisp b/t/class.lisp index 93f633e..51ad0fc 100644 --- a/t/class.lisp +++ b/t/class.lisp @@ -260,7 +260,7 @@ )") (is-table-class :mysql (defclass tweet () - ((user-name :references (user name))) + ((user-name :references (user name) :col-type (:or :null :text))) (:metaclass table-class)) "CREATE TABLE tweet ( user_name VARCHAR(64) NOT NULL