我们从Python开源项目中,提取了以下3个代码示例,用于说明如何使用django.contrib.auth.models.Model()。
def test_undefined(self): from django.db import models from django.db.models import fields class UndefinedClass(models.Model): pass alias = adapter.DjangoClassAlias(UndefinedClass, None) x = UndefinedClass() alias.applyAttributes(x, { 'id': pyamf.Undefined }) self.assertEqual(x.id, fields.NOT_PROVIDED) x.id = fields.NOT_PROVIDED attrs = alias.getEncodableAttributes(x) self.assertEqual(attrs, {'id': pyamf.Undefined})
def test_non_field_prop(self): from django.db import models class Book(models.Model): def _get_number_of_odd_pages(self): return 234 # note the lack of a setter callable .. numberOfOddPages = property(_get_number_of_odd_pages) alias = adapter.DjangoClassAlias(Book, 'Book') x = Book() self.assertEqual( alias.getEncodableAttributes(x), {'numberOfOddPages': 234, 'id': None} ) # now we test sending the numberOfOddPages attribute alias.applyAttributes(x, {'numberOfOddPages': 24, 'id': None}) # test it hasn't been set self.assertEqual(x.numberOfOddPages, 234)
def test_properties(self): """ See #764 """ from django.db import models class Foob(models.Model): def _get_days(self): return 1 def _set_days(self, val): assert 1 == val days = property(_get_days, _set_days) alias = adapter.DjangoClassAlias(Foob, 'Bar') x = Foob() self.assertEqual(x.days, 1) self.assertEqual( alias.getEncodableAttributes(x), {'days': 1, 'id': None} ) # now we test sending the numberOfOddPages attribute alias.applyAttributes(x, {'id': None})