diff --git a/django_dbml/core/builder.py b/django_dbml/core/builder.py index d064b70..adfbb1d 100644 --- a/django_dbml/core/builder.py +++ b/django_dbml/core/builder.py @@ -59,6 +59,8 @@ def _build_table(self, project: ProjectDefinition, model: type[Model]) -> None: table_to_field=field_name, ) ) + table.fields[field_name] = self.build_field_definition(project, table_name, field) + self.add_field_index(table, model, field, field_name) continue if isinstance(field, models.fields.related.ForeignKey): @@ -72,6 +74,8 @@ def _build_table(self, project: ProjectDefinition, model: type[Model]) -> None: table_to_field=field_name, ) ) + table.fields[field_name] = self.build_field_definition(project, table_name, field) + self.add_field_index(table, model, field, field_name) continue if isinstance(field, models.fields.related.ManyToManyField): @@ -220,7 +224,7 @@ def add_field_index(self, table: TableDefinition, model: type[Model], field: Fie def add_meta_indexes(self, table: TableDefinition, model: type[Model]) -> None: for index in model._meta.indexes: - column_names = [model._meta._forward_fields_map[field_name].column for field_name in index.fields] + column_names = [model._meta._forward_fields_map[field_name.lstrip("-")].column for field_name in index.fields] table.indexes.append( IndexDefinition( fields=column_names, diff --git a/pyproject.toml b/pyproject.toml index 252b7ac..6deef6a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -13,7 +13,7 @@ authors = [ { name = "Michel Wilhelm", email = "michelwilhelm@gmail.com" }, ] dependencies = [ - "django>=4.2,<6.0", + "django>=4.2,<7.0", ] keywords = ["django", "dbml", "schema"] classifiers = [ diff --git a/uv.lock b/uv.lock index 96fe4c0..633702e 100644 --- a/uv.lock +++ b/uv.lock @@ -50,7 +50,7 @@ dev = [ ] [package.metadata] -requires-dist = [{ name = "django", specifier = ">=4.2,<6.0" }] +requires-dist = [{ name = "django", specifier = ">=4.2,<7.0" }] [package.metadata.requires-dev] dev = [