Bird
0
0

What will happen if you call MyField().to_internal_value('abc') given this code?

medium📝 component behavior Q5 of 15
Django - DRF Advanced Features
What will happen if you call MyField().to_internal_value('abc') given this code?
class MyField(serializers.Field):
    def to_internal_value(self, data):
        return int(data)
AReturns integer 0
BRaises ValueError
CReturns string 'abc'
DReturns None
Step-by-Step Solution
Solution:
  1. Step 1: Analyze to_internal_value method

    It tries to convert input data to int using int(data).
  2. Step 2: Check conversion of 'abc' to int

    Converting 'abc' to int raises ValueError because 'abc' is not a number.
  3. Final Answer:

    Raises ValueError -> Option B
  4. Quick Check:

    to_internal_value('abc') = ValueError [OK]
Quick Trick: to_internal_value must handle invalid input to avoid errors [OK]
Common Mistakes:
MISTAKES
  • Assuming conversion returns 0 on failure
  • Expecting string output unchanged
  • Ignoring exceptions raised by int()

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Django Quizzes