API Reference
Modules
Module Attributes
__file__ =
'C:\\Documents and Settings\\James\\Desktop\\PythonWeb\\bricks\\bricks\\controller\\crud.pyc'
__name__ =
'bricks.controller.crud'
Classes
class CRUDdef __call__(self, environ, start_response)[show source]C:\Documents and Settings\James\Desktop\PythonWeb\bricks\bricks\controller\crud.py 11: def __call__(self, environ, start_response): 12: realFile = os.path.abspath( 13: os.path.join( 14: environ['bricks.private'], 15: 'app', 16: environ['bricks.app'], 17: 'model', 18: self.modelName.lower()+'.py')) 19: if not os.path.exists(realFile): 20: raise Exception('No such model file %s'%repr(realFile)) 21: 22: module = environ['bricks.import'](realFile) 23: #raise Exception([realFile, module]) 24: if not hasattr(module,'table'): 25: raise Exception('No table object found in the %s'%repr(realFile)) 26: table = module.table 27: tables = model.Database() 28: tables.add(table) 29: tables.init(environ['database.cursor']) 30: self.model = tables[table.name] 31: 32: if not tables.exist(): 33: tables.create() 34: return bricks.Controller.__call__(self, environ, start_response)def __init__(self, modelName)[show source]C:\Documents and Settings\James\Desktop\PythonWeb\bricks\bricks\controller\crud.py 5: def __init__(self, modelName): 6: self.modelName = modelNamedef delete(self, rowid)[show source]C:\Documents and Settings\James\Desktop\PythonWeb\bricks\bricks\controller\crud.py 65: def delete(self, rowid): 66: rowid = int(rowid) 67: if not self.model.has_key(int(rowid)): 68: return self.error(rowid) 69: else: 70: self.model.delete(rowid) 71: self.environ['database.connection'].commit() 72: return self.index()def do_edit(self, rowid)[show source]C:\Documents and Settings\James\Desktop\PythonWeb\bricks\bricks\controller\crud.py 102: def do_edit(self, rowid): 103: form = self.model.row(int(rowid)).form() 104: form.populate(self.environ['web.cgi']) 105: 106: if not form.valid(): 107: return self.edit(int(rowid)) 108: else: 109: if not self.model.has_key(int(rowid)): 110: return self.error(rowid) 111: else: 112: for k, v in form.dict().items(): 113: self.model[int(rowid)][k] = v 114: self.environ['database.connection'].commit() 115: return self.index()def do_new(self)[show source]C:\Documents and Settings\James\Desktop\PythonWeb\bricks\bricks\controller\crud.py 131: def do_new(self): 132: form = self.model.form(action=self.environ['bricks.controller.url']+'/do_new') 133: form.populate(self.environ['web.cgi']) 134: 135: if not form.valid(): 136: return self.new(form) 137: else: 138: self.model.insert(**form.dict()) 139: self.environ['database.connection'].commit() 140: return self.index()def edit(self, rowid)[show source]C:\Documents and Settings\James\Desktop\PythonWeb\bricks\bricks\controller\crud.py 85: def edit(self, rowid): 86: if not self.model.has_key(int(rowid)): 87: return self.error(rowid) 88: else: 89: return [ 90: self.view( 91: file = self.model.name+'/crud_edit.html', 92: namespace = { 93: 'rowid':self.model[int(rowid)], 94: 'form':self.model[int(rowid)].form( 95: action=self.environ['bricks.controller.url']+'/do_edit/%s'%rowid 96: ).html(), 97: } 98: ) 99: ]def error(self, rowid)[show source]C:\Documents and Settings\James\Desktop\PythonWeb\bricks\bricks\controller\crud.py 75: def error(self, rowid): 76: return [ 77: self.view( 78: file = self.model.name+'/crud_error.html', 79: namespace = { 80: 'rowid':int(rowid), 81: } 82: ) 83: ]def get(self, rowid)[show source]C:\Documents and Settings\James\Desktop\PythonWeb\bricks\bricks\controller\crud.py 49: def get(self, rowid): 50: if not self.model.has_key(int(rowid)): 51: return self.error(rowid) 52: else: 53: return [ 54: self.view( 55: file = self.model.name+'/crud_view.html', 56: namespace = { 57: 'frozen':self.model.row(int(rowid)).form().frozen(), 58: 'model':self.model, 59: 'rowid':rowid, 60: } 61: ) 62: ]def index(self)[show source]C:\Documents and Settings\James\Desktop\PythonWeb\bricks\bricks\controller\crud.py 36: def index(self): 37: return [ 38: self.view( 39: file = self.model.name.lower()+'/crud_list.html', 40: namespace = { 41: 'model':self.model, 42: 'str':str, 43: 'escape':web.encode, 44: } 45: ) 46: ]def new(self, form=None)[show source]C:\Documents and Settings\James\Desktop\PythonWeb\bricks\bricks\controller\crud.py 118: def new(self, form=None): 119: if form == None: 120: form = self.model.form(action=self.environ['bricks.controller.url']+'/do_new') 121: return [ 122: self.view( 123: file = self.model.name+'/crud_new.html', 124: namespace = { 125: 'form':form.html(), 126: } 127: ) 128: ]def setup(self)[show source]C:\Documents and Settings\James\Desktop\PythonWeb\bricks\bricks\controller\crud.py 8: def setup(self): 9: self.environ['database.connection'].commit()