Skip to content

[REQ] [go-gin-server] place models in different package to prevent circular package references  #2752

Open
@pconstantinou

Description

@pconstantinou

Golang doesn't allow packages to have circular references. Currently, the go-gin-server implementation places the model and api definition code in the same package. This makes using models generated from OpenAPI difficult to use outside of the package.

Currently, for example, you can't have the API call a separate database package with a model object as a parameter, because it requires making circular package references.

Describe the solution you'd like

Ideally, there would be the option of having a separate model package from an API package.

Describe alternatives you've considered

The current workaround is either putting all your database code in the generated API objects or replicating the model objects within a separate package (duplicating code).

Additional context

The openapi generator libraries seem to allow for separate package and API names but those parameters are ignored by the go-gin-server generator.

#1931 also discusses this a similar issue

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions