2017-05-08 53 views
1

按DRF文件DRF ValidatorsDjango的REST框架 - 傳遞附加參數validate_foo

我的方法應該是這樣

def validate_title(self, value): 
    """ 
    Check that the blog post is about Django. 
    """ 
    if 'django' not in value.lower(): 
     raise serializers.ValidationError("Blog post is not about Django") 
    return value 

我想一個額外的參數傳遞給validate_title,所以它應該看起來像

這裏id是我想調用序列化程序時要傳遞的一些值。

def validate_title(self, value, id): 
     """ 
     Check that the blog post is about Django. 
     """ 
     # Use <id> here 
     if 'django' not in value.lower(): 
      raise serializers.ValidationError("Blog post is not about Django") 
     return value 

我不能理解如何實現這個,有什麼幫助嗎?

+0

ID值從哪裏來? –

+0

@DanielRoseman更新。 – ofnowhere

+0

仍然不夠清楚,無法獲得幫助 – Linovia

回答

0

我不確定是否正確理解您的問題。要回答你的問題,我想你想傳遞額外的參數給validate_ {}方法。您可以始終使用* args和** kwargs將額外參數傳遞給自定義模型驗證方法。然後從上面的參數中提取值,這應該可以幫助您獲取參數。

def validate_title(self, *args, **kwargs):