Skip to content

Keep plural names for objects #41

Open
@a1d4r

Description

@a1d4r

Describe

Plural names of JSON objects are converted to singular nouns (e.g. details -> Detail, statistics -> Statistic). It is an expected behaviour for JSON arrays but not for objects.

Reproduce

Package version: v0.2.4

JSON data:
example.py

{
  "details": {
    "amount": 1,
    "description": "Lorem Ipsum"
  },
  "statistics": {
    "likes": 100,
    "comments": 200
  }
}

json2models -m Example example.json -f pydantic --max-strings-literals 1 > example.py

Desired result

class Example(BaseModel):
    details: 'Details'
    statistics: 'Statistics'


class Details(BaseModel):
    amount: int
    description: str


class Statistics(BaseModel):
    likes: int
    comments: int

Actual result

class Example(BaseModel):
    details: 'Detail'
    statistics: 'Statistic'


class Detail(BaseModel):
    amount: int
    description: str


class Statistic(BaseModel):
    likes: int
    comments: int

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions