def test_formfield(self): d = DictField() f = d.formfield() self.failUnless(isinstance(f, DictFormField))
def test_to_python_can_empty(self): d = DictField(blank=True, null=True) self.failUnlessEqual(d.to_python(None), None)
def test_get_db_prep_save_can_empty(self): d = DictField(blank=True, null=True) self.failUnlessEqual(d.get_db_prep_save(None), None)
class LogEntry(UpdateInfoBaseModel): """ PyLucid action log entries. inherited attributes from UpdateInfoBaseModel: createtime -> datetime of creation lastupdatetime -> datetime of the last change createby -> ForeignKey to user who creaded this entry lastupdateby -> ForeignKey to user who has edited this entry """ class RequestTooFast(Exception): pass objects = LogEntryManager() site = models.ForeignKey(Site, default=Site.objects.get_current) on_site = CurrentSiteManager() # Log information: app_label = models.CharField( _('App Label'), max_length=255, db_index=True, help_text="The App name witch has created this log entry.") action = models.CharField( _('Action'), max_length=128, db_index=True, help_text="Short action key. (e.g.: 'do search', 'login')") message = models.CharField( _('Message'), max_length=255, blank=True, null=True, help_text="Short/one line log message. (e.g.: 'user FooBar login')") long_message = models.TextField(_('long Message'), blank=True, null=True, help_text="Complete log message.") # From django-dbpreferences data = DictField(blank=True, null=True, help_text="serialized dictionary data") # Own meta data: uri = models.CharField( _('URL'), max_length=255, help_text="absolute URI form request.build_absolute_uri()") used_language = models.ForeignKey("pylucid.Language", blank=True, null=True) # Data from request.META remote_addr = models.IPAddressField( _('Remote IP Address'), blank=True, null=True, db_index=True, help_text= "The IP address of the client. From request.META['REMOTE_ADDR']") remote_user = models.CharField( _('Remote User'), max_length=255, blank=True, null=True, help_text= "The user authenticated by the web server, if any. From request.META['REMOTE_USER']" ) request_method = models.CharField( _('Request Method'), max_length=8, blank=True, null=True, help_text= "Request method, e.g.: 'GET', 'POST'. From request.META['REQUEST_METHOD']" ) query_string = models.CharField( _('Query String'), max_length=255, blank=True, null=True, help_text= "The query string, as a single **unparsed** string. From request.META['QUERY_STRING']" ) http_referer = models.CharField( _('Referer'), max_length=255, blank=True, null=True, help_text= "The referring page, if any. From request.META['HTTP_REFERER']") http_user_agent = models.CharField( _('User Agent'), max_length=255, blank=True, null=True, help_text= "The client's user-agent string. From request.META['HTTP_USER_AGENT']") http_accept_encoding = models.CharField( _('Accept Encoding'), max_length=255, blank=True, null=True, help_text="from request.META['HTTP_ACCEPT_ENCODING']") http_accept_language = models.CharField( _('Accept Language'), max_length=255, blank=True, null=True, help_text="from request.META['HTTP_ACCEPT_LANGUAGE']") def get_absolute_url(self): return self.uri def pformat(self): """ Usefull for debugging """ output = "" for field in self._meta.fields: value = repr(getattr(self, field.name)) if isinstance(value, basestring): value = value.replace("\\n", "\\n\n") value = "\n ... ".join([line for line in value.split("\n")]) output += "%-21s: %s\n" % (field.name, value) return output def __unicode__(self): return u"LogEntry %s %s %s" % (self.createby, self.createtime, self.action) class Meta: app_label = 'pylucid' verbose_name = _('log entry') verbose_name_plural = _('log entries') ordering = ('-createtime', )