Opened 6 years ago

Last modified 6 years ago

#21637 closed Bug

Defining objects of models having custom field without any parameter. — at Initial Version

Reported by: ANUBHAV JOSHI Owned by: nobody
Component: Database layer (models, ORM) Version: 1.6
Severity: Normal Keywords:
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

When we define any model, then we can create its object as obj=ModelClassName(). But when we define custom fields we just cannot do the same always. If we are using to_python() method, then it shows up error.

If a define my model as:

from django.db import models

class LField(models.Field):

metaclass = models.SubfieldBase
def db_type(self, connection):

return 'longtext'

def to_python(self, value):

return long(value)

class Person(models.Model):

name = models.CharField(max_length=80, blank=True, null=True)
something_else = LField()

class Person2(models.Model):

name = models.CharField(max_length=80, blank=True, null=True)
ph = models.CharField(max_length=80, blank=True, null=True)

Then it is not possible to define an object of Person type without giving parameters.
i.e.
p=Person() raises ValueError
p=Person2() works fine as it should like in case of any other class.

Change History (0)

Note: See TracTickets for help on using tickets.
Back to Top