Skip to content

Commit

Permalink
bugFix/pycodestyle-state-city
Browse files Browse the repository at this point in the history
  • Loading branch information
hima890 committed Jul 29, 2024
1 parent 7c6dc9a commit 284e445
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 20 deletions.
19 changes: 9 additions & 10 deletions models/city.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,22 +12,21 @@ class named city that inharits from BaseModel
class City(BaseModel, Base):
"""This is the class for City
Attributes:
state_id: The state id
state_id: foreign key to states.id
name: input name
"""

__tablename__ = 'cities'

if os.getenv('HBNB_TYPE_STORAGE') == 'db':
id = Column(String(60), nullable=False, primary_key=True)
created_at = Column(DateTime, nullable=False,
default=datetime.utcnow())
updated_at = Column(DateTime, nullable=False,
default=datetime.utcnow())
name = Column(String(128), nullable=False)
created_at = Column(DateTime,
nullable=False, default=datetime.utcnow())
updated_at = Column(DateTime,
nullable=False, default=datetime.utcnow())
state_id = Column(String(60), ForeignKey('states.id'), nullable=False)
state = relationship(
'State', back_populates='cities')
name = Column(String(128), nullable=False)
state = relationship('State', back_populates='cities')

else:
name = ""
state_id = ""
name = ""
21 changes: 11 additions & 10 deletions models/state.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class State(BaseModel, Base):
"""This is the class for State
Attributes:
name: input name
cities = relationship between state and city tables.
cities: relationship between state and city tables.
"""

__tablename__ = 'states'
Expand All @@ -25,20 +25,21 @@ class State(BaseModel, Base):
updated_at = Column(DateTime,
nullable=False, default=datetime.utcnow())
name = Column(String(128), nullable=False)
cities = relationship(
'City', back_populates='state',
cascade='all, delete, delete-orphan')
cities = relationship('City',
back_populates='state',
cascade='all, delete, delete-orphan'
)

else:
name = ""

@property
def cities(self):
"""returns list of Cities and some relationships"""
"""returns list of City instances with state_id equal
to the current State.id"""
from models import storage
cities_instances = []
cities_dict = storage.all(City)
for key, value in cities_dict.items():
if self.id == value.state_id:
cities_instances.append(value)
return (cities_instances)
for city in storage.all(City).values():
if city.state_id == self.id:
cities_instances.append(city)
return cities_instances

0 comments on commit 284e445

Please sign in to comment.