示例#1
0
    def __init__(self, item):

        self.json = item
        item['item_category'] = item.pop('category', None)
        item['item_subcategory'] = item.pop('subcategory', None)
        self.form = ItemForm(item)

        if not self.form.is_valid():
            raise RESTFormInvalidError(self.form)

        if 'extended_info' not in item:
            raise ValidationError('extended_info required for item!')

        ei_json = self.json['extended_info']

        self.ei_forms = []

        for key, value in ei_json.iteritems():
            ei = {
                "key": key,
                "value": value
            }

            ei_form = ItemExtendedInfoForm(ei)
            self.ei_forms.append(ei_form)

            if not ei_form.is_valid():
                raise RESTFormInvalidError(ei_form)
示例#2
0
    def __init__(self, item):

        self.json = item
        item['item_category'] = item.pop('category', None)
        item['item_subcategory'] = item.pop('subcategory', None)
        self.form = ItemForm(item)

        if not self.form.is_valid():
            raise RESTFormInvalidError(self.form)

        if 'extended_info' not in item:
            raise ValidationError('extended_info required for item!')

        ei_json = self.json['extended_info']

        self.ei_forms = []

        for key, value in ei_json.iteritems():
            ei = {
                "key": key,
                "value": value
            }

            ei_form = ItemExtendedInfoForm(ei)
            self.ei_forms.append(ei_form)

            if not ei_form.is_valid():
                raise RESTFormInvalidError(ei_form)
示例#3
0
class ItemStash(object):
    """
    This object handles the storing and validation of an Item
    """

    def __init__(self, item):

        self.json = item
        item['item_category'] = item.pop('category', None)
        item['item_subcategory'] = item.pop('subcategory', None)
        self.form = ItemForm(item)

        if not self.form.is_valid():
            raise RESTFormInvalidError(self.form)

        if 'extended_info' not in item:
            raise ValidationError('extended_info required for item!')

        ei_json = self.json['extended_info']

        self.ei_forms = []

        for key, value in ei_json.iteritems():
            ei = {
                "key": key,
                "value": value
            }

            ei_form = ItemExtendedInfoForm(ei)
            self.ei_forms.append(ei_form)

            if not ei_form.is_valid():
                raise RESTFormInvalidError(ei_form)

    def get_form(self):
        """Returns the ItemForm used to validate the item"""
        return self.form

    def get_ei_forms(self):
        """Returns the list containing this Item's EI forms"""
        return self.ei_forms

    def remove_ei_form(self, form):
        """Removes a given EI form from ei_forms."""
        if form in self.ei_forms:
            self.ei_forms.remove(form)

    def get_json(self):
        return self.json

    def set_instance(self, instance):
        self.instance = instance
        self.form = ItemForm(self.json, instance=instance)

    def get_instance(self):
        return self.instance
示例#4
0
class ItemStash(object):
    """
    This object handles the storing and validation of an Item
    """
    def __init__(self, item):

        self.json = item
        item['item_category'] = item.pop('category', None)
        item['item_subcategory'] = item.pop('subcategory', None)
        self.form = ItemForm(item)

        if not self.form.is_valid():
            raise RESTFormInvalidError(self.form)

        if 'extended_info' not in item:
            raise ValidationError('extended_info required for item!')

        ei_json = self.json['extended_info']

        self.ei_forms = []

        for key, value in ei_json.iteritems():
            ei = {
                "key": key,
                "value": value
            }

            ei_form = ItemExtendedInfoForm(ei)
            self.ei_forms.append(ei_form)

            if not ei_form.is_valid():
                raise RESTFormInvalidError(ei_form)

    def get_form(self):
        """Returns the ItemForm used to validate the item"""
        return self.form

    def get_ei_forms(self):
        """Returns the list containing this Item's EI forms"""
        return self.ei_forms

    def remove_ei_form(self, form):
        """Removes a given EI form from ei_forms."""
        if form in self.ei_forms:
            self.ei_forms.remove(form)

    def get_json(self):
        return self.json

    def set_instance(self, instance):
        self.instance = instance
        self.form = ItemForm(self.json, instance=instance)

    def get_instance(self):
        return self.instance
示例#5
0
 def set_instance(self, instance):
     self.instance = instance
     self.form = ItemForm(self.json, instance=instance)
示例#6
0
 def set_instance(self, instance):
     self.instance = instance
     self.form = ItemForm(self.json, instance=instance)