Как использовать поле заголовка другой модели в HyperlinkedIdentityField - PullRequest
0 голосов
/ 13 июля 2020
my models.py file as follows : 
**models.py:**

    class ProductType(models.Model):
        title = models.CharField(max_length=100)
        description = models.TextField()   

    class Product(models.Model):
        title = models.CharField(max_length=255)
        description = models.TextField(blank=True)
        upc = models.CharField(max_length=255)
        product_type = models.ForeignKey(ProductType, on_delete=models.CASCADE)    
        slug = models.SlugField(unique=True, max_length=255, db_index=True)

My serializers.py file as follows

**serializers.py**
class ProductTypeSerializer(serializers.ModelSerializer):
    class Meta:
        model=ProductType
        fields='__all__'
        

class ProductSerializer(serializers.ModelSerializer):        
    product_type = serializers.HyperlinkedIdentityField(
                       view_name='producttype-detail',lookup_field = 'slug')
    class Meta:
        model=Product
        fields='__all__' 

   

Я получаю вывод API продукта следующим образом:

{
        "id": 1,
        "product_type": "http://127.0.0.1:8000/products/producttype_list/P1/",
        "title": "Do non officia labore sapiente ab",
        "description": "Dignissimos aute ius",
        "upc": "Autem",            
        "slug": "P1",
        
    },
    {
        "id": 2,
        "product_type": "http://127.0.0.1:8000/products/producttype_list/p2/",
        "title": "Exercitation repudiandae",
        "description": "Ut consectetur volu",
        "upc": "Blanditiis et cupidatat delectus beatae qui quos inventore",            
        "slug": "p2",
    }

Где product_type - это внешний ключ. product_type содержит гиперссылку со слагом продукта. но я хочу использовать слаг таблицы product_type в этой гиперссылке. Кто-нибудь знает, как использовать слаг из другой таблицы? Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...