Here is the full controller code:

from tg import expose, url
from abapp.model import DBSession, metadata
from tg.controllers import RestController, redirect
from tg.decorators import expose, validate
from formencode.validators import NotEmpty, Bool, DateConverter,
Schema
from sprox.formbase import FilteringSchema

# Import the AB app classes
from abapp.model import BreakType

from tw.api import WidgetsList
from tg import tmpl_context

from tw.forms import TableForm, CalendarDatePicker, SingleSelectField,
TextField, TextArea
from tw.forms import TextField, TextArea, HiddenField,
BooleanRadioButtonList

#import pylons

class ABBreakTypeForm(TableForm):

        fields = [
            HiddenField('breaktype_id'),
            HiddenField('_method'),
            TextField('break_type', validator=FilteringSchema
(allow_extra_fields=True), label_text='Break type*')
        ]

        submit_text = 'Create Break Type'

create_abbreak_type_form = ABBreakTypeForm
("create_abbreak_type_form",  action='create')

class ABBreakTypeRestController(RestController):

    @expose('abapp.templates.abbreak_type.get_all')
    def get_all(self):
        all_abbreak_types = DBSession.query(BreakType).all()
        return dict(page='breaktype',
all_abbreak_types=all_abbreak_types)

    @expose('abapp.templates.abbreak_type.new')
    def new(self, *args, **kw):
        tmpl_context.form = create_abbreak_type_form
        return dict(modelname='ABBreakType', page='New AB Break Type')

    @expose('abapp.templates.abbreak_type.edit')
    def edit(self, abbreak_type_id, *args, **kw):
        ab_break_type = DBSession.query(BreakType).get
(abbreak_type_id)
        ab_break_type._method = "PUT"
        tmpl_context.form = create_abbreak_type_form
        return dict(ab_break_type=ab_break_type)

    @validate(create_abbreak_type_form, error_handler=new)
    @expose()
    def post(self, *args, **kw):
        tmpl_context.form = create_abbreak_type_form
        ab_break_type = BreakType()
        ab_break_type.break_type = kw['break_type']
        DBSession.add(ab_break_type)
        redirect(url('../'))

    @validate(create_abbreak_type_form, error_handler=new)
    @expose()
    def put(self, abbreak_type_id, *args, **kw):
        ab_break_type = DBSession.query(BreakType).get
(abbreak_type_id)
        ab_break_type.break_type = kw['break_type']
        redirect(url('../'))

    @expose('abapp.templates.abbreak_type.get_delete')
    def get_delete(self, abbreak_type_id):
        ab_break_type = DBSession.query(BreakType).get
(abbreak_type_id)
        return dict(ab_break_type=ab_break_type)

    @expose()
    def post_delete(self, abbreak_type_id, **kw):
        DBSession.delete(DBSession.query(BreakType).get
(abbreak_type_id))
        redirect(url('../'))


On Aug 5, 1:53 pm, "Diez B. Roggisch" <[email protected]> wrote:
> On Wednesday 05 August 2009 19:47:57 shaw1ea wrote:
>
> > I already have this function as follows:
>
> > �...@expose('abapp.templates.abbreak_type.new')
> >     def new(self, *args, **kw):
> >         tmpl_context.form = create_abbreak_type_form
> >         return dict(modelname='ABBreakType', page='New AB Break Type')
>
> Then we need more code, the full controller that's not working.
>
> Diez
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"TurboGears" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/turbogears?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to