Example #1
0
    def edit(self, *args, **kw):
        """Display a page to edit the record."""
        pks = self.provider.get_primary_fields(self.model)
        kw = map_args_to_pks(args, {})

        tmpl_context.widget = self.edit_form
        value = self.edit_filler.get_value(kw)
        value['_method'] = 'PUT'
        return dict(value=value, model=self.model.__name__, pk_count=len(pks))
Example #2
0
    def edit(self, *args, **kw):
        """Display a page to edit the record."""
        kw = map_args_to_pks(args, {})

        tmpl_context.widget = self.edit_form
        value = self.edit_filler.get_value(kw)
        value['_method'] = 'PUT'
        return dict(value=value, model=self.model.__name__,
                    pk_count=len(self.provider.get_primary_fields(self.model)))
Example #3
0
    def post_delete(self, *args, **kw):
        """This is the code that actually deletes the record"""
        kw = map_args_to_pks(args, {})

        obj = None
        if kw:
            obj = self.provider.get_obj(self.model, kw)

        if obj is not None:
            self.provider.delete(self.model, kw)

        if tg.request.response_type == 'application/json':
            return dict()

        pks = self.provider.get_primary_fields(self.model)
        return redirect('./' + '../' * (len(pks) - 1), params=self._kept_params())
Example #4
0
    def post_delete(self, *args, **kw):
        """This is the code that actually deletes the record"""
        kw = map_args_to_pks(args, {})

        obj = None
        if kw:
            obj = self.provider.get_obj(self.model, kw)

        if obj is not None:
            self.provider.delete(self.model, kw)

        if tg.request.response_type == 'application/json':
            return dict()

        pks = self.provider.get_primary_fields(self.model)
        return redirect('./' + '../' * (len(pks) - 1),
                        params=self._kept_params())
Example #5
0
    def get_one(self, *args, **kw):
        """get one record, returns HTML or json"""
        #this would probably only be realized as a json stream
        kw = map_args_to_pks(args, {})

        if tg.request.response_type == 'application/json':
            obj = self.provider.get_obj(self.model, kw)
            if obj is None:
                tg.response.status_code = 404
            elif self.conditional_update_field is not None:
                tg.response.last_modified = getattr(
                    obj, self.conditional_update_field)

            return dict(model=self.model.__name__, value=self._dictify(obj))

        tmpl_context.widget = self.edit_form
        value = self.edit_filler.get_value(kw)
        return dict(value=value, model=self.model.__name__)
Example #6
0
    def get_one(self, *args, **kw):
        """get one record, returns HTML or json"""
        #this would probably only be realized as a json stream
        kw = map_args_to_pks(args, {})

        if tg.request.response_type == 'application/json':
            obj = self.provider.get_obj(self.model, kw)
            if obj is None:
                tg.response.status_code = 404
            elif self.conditional_update_field is not None:
                tg.response.last_modified = getattr(obj, self.conditional_update_field)

            return dict(model=self.model.__name__,
                        value=self._dictify(obj))

        tmpl_context.widget = self.edit_form
        value = self.edit_filler.get_value(kw)
        return dict(value=value, model=self.model.__name__)