コード例 #1
0
ファイル: backend.go プロジェクト: rainycape/gondola
func (b *Backend) DefineField(db *sql.DB, m driver.Model, table *sql.Table, field *sql.Field) (string, []string, error) {
	if field.HasOption(sql.OptionAutoIncrement) {
		if field.Constraint(sql.ConstraintPrimaryKey) == nil {
			return "", nil, fmt.Errorf("%s can only auto increment the primary key", b.Name())
		}
	}
	def, constraints, err := b.SqlBackend.DefineField(db, m, table, field)
	if err == nil {
		def = strings.Replace(strings.Replace(def, "DEFAULT false", "DEFAULT 0", -1), "DEFAULT true", "DEFAULT 1", -1)
	}
	return def, constraints, err
}