mirror of
https://github.com/seanmorley15/AdventureLog.git
synced 2025-07-23 23:09:37 +02:00
feat: Add country name to Region serializer and update RegionCard component
This commit is contained in:
parent
4e543fad55
commit
b82e4b6f0d
4 changed files with 8 additions and 3 deletions
|
@ -34,10 +34,11 @@ class CountrySerializer(serializers.ModelSerializer):
|
||||||
|
|
||||||
class RegionSerializer(serializers.ModelSerializer):
|
class RegionSerializer(serializers.ModelSerializer):
|
||||||
num_cities = serializers.SerializerMethodField()
|
num_cities = serializers.SerializerMethodField()
|
||||||
|
country_name = serializers.CharField(source='country.name', read_only=True)
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Region
|
model = Region
|
||||||
fields = '__all__'
|
fields = '__all__'
|
||||||
read_only_fields = ['id', 'name', 'country', 'longitude', 'latitude', 'num_cities']
|
read_only_fields = ['id', 'name', 'country', 'longitude', 'latitude', 'num_cities', 'country_name']
|
||||||
|
|
||||||
def get_num_cities(self, obj):
|
def get_num_cities(self, obj):
|
||||||
return City.objects.filter(region=obj).count()
|
return City.objects.filter(region=obj).count()
|
||||||
|
|
|
@ -46,7 +46,7 @@
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<h2 class="card-title overflow-ellipsis">{city.name}</h2>
|
<h2 class="card-title overflow-ellipsis">{city.name}</h2>
|
||||||
<div class="flex flex-wrap gap-2">
|
<div class="flex flex-wrap gap-2">
|
||||||
<div class="badge badge-neutral-300">
|
<div class="badge badge-primary">
|
||||||
{city.region_name}, {city.country_name}
|
{city.region_name}, {city.country_name}
|
||||||
</div>
|
</div>
|
||||||
<div class="badge badge-neutral-300">{city.region}</div>
|
<div class="badge badge-neutral-300">{city.region}</div>
|
||||||
|
|
|
@ -56,11 +56,14 @@
|
||||||
<h2 class="card-title overflow-ellipsis">{region.name}</h2>
|
<h2 class="card-title overflow-ellipsis">{region.name}</h2>
|
||||||
<div>
|
<div>
|
||||||
<div class="badge badge-primary">
|
<div class="badge badge-primary">
|
||||||
<p>{region.id}</p>
|
<p>{region.country_name}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="badge badge-neutral-300">
|
<div class="badge badge-neutral-300">
|
||||||
<p>{region.num_cities} {$t('worldtravel.cities')}</p>
|
<p>{region.num_cities} {$t('worldtravel.cities')}</p>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="badge badge-neutral-300">
|
||||||
|
<p>{region.id}</p>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-actions justify-end">
|
<div class="card-actions justify-end">
|
||||||
<!-- <button class="btn btn-info" on:click={moreInfo}>More Info</button> -->
|
<!-- <button class="btn btn-info" on:click={moreInfo}>More Info</button> -->
|
||||||
|
|
|
@ -64,6 +64,7 @@ export type Region = {
|
||||||
latitude: number;
|
latitude: number;
|
||||||
longitude: number;
|
longitude: number;
|
||||||
num_cities: number;
|
num_cities: number;
|
||||||
|
country_name: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type City = {
|
export type City = {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue