def save(self, old_record, list_record, detail_record): attributes = list_record.pop('attributes', {}) list_record.setdefault('schema', self.schema.id) if not old_record: list_record.setdefault('item_date', today()) list_record.setdefault('pub_date', now()) from ebpub.db.forms import NewsItemForm form = NewsItemForm(list_record, instance=old_record) if form.is_valid(): return self.create_or_update(old_record, attributes, **form.cleaned_data) else: raise SkipRecord(form.errors)
def save(self, old_record, list_record, detail_record): attributes = list_record.pop('attributes', {}) list_record.setdefault('schema', self.schema.id) if not old_record: list_record.setdefault('item_date', today()) list_record.setdefault('pub_date', now()) from ebpub.db.forms import NewsItemForm form = NewsItemForm(list_record, instance=old_record) if form.is_valid(): return self.create_or_update(old_record, attributes, **form.cleaned_data) else: self.logger.info("Skipping due to validation failures:") for key, val in form.errors.items(): self.logger.info("%s: %s" % (key, val.as_text())) raise SkipRecord(form.errors)