def guardar_contenido(self, id=None): """Guarda en la base de datos el post recibido por la forma""" if id is not None: contenido = Session.query(Contenido).get(id) titulo_original = contenido.titulo schema = FormaNuevoContenido() #contra que voy a validar ControllerState = FormencodeState( ) #el estado que le voy a pasar al validador if request.params['titulo'] != titulo_original: ControllerState.cambio = True #en este caso el validador debe checar que el nuevo nombre sea unico else: ControllerState.cambio = False try: form_result = schema.to_python(request.params, ControllerState) except formencode.validators.Invalid, error: c.contenido = { 'titulo': request.params['titulo'], 'texto': request.params['texto'] } return htmlfill.render( render("/derived/contenidos/nuevo.mako"), c.contenido, error) contenido.titulo = form_result['titulo'] contenido.texto = form_result['texto'] contenido.editado = datetime.datetime.now() Session.add(contenido) Session.commit() return redirect( url(controller="contenido", action="view", id=contenido.id))
def guardar_contenido(self,id=None): """Guarda en la base de datos el post recibido por la forma""" if id is not None: contenido = Session.query(Contenido).get(id) titulo_original = contenido.titulo schema = FormaNuevoContenido() #contra que voy a validar ControllerState = FormencodeState() #el estado que le voy a pasar al validador if request.params['titulo']!=titulo_original: ControllerState.cambio = True #en este caso el validador debe checar que el nuevo nombre sea unico else: ControllerState.cambio = False try: form_result = schema.to_python(request.params,ControllerState) except formencode.validators.Invalid, error: c.contenido = {'titulo':request.params['titulo'], 'texto':request.params['texto']} return htmlfill.render(render("/derived/contenidos/nuevo.mako"),c.contenido,error) contenido.titulo = form_result['titulo'] contenido.texto = form_result['texto'] contenido.editado = datetime.datetime.now() Session.add(contenido) Session.commit() return redirect(url(controller="contenido", action="view", id=contenido.id))
def _to_python(self,value,state): nombre_valido = Session.query(AuthUser).filter_by(username=value).first() if nombre_valido is not None: raise formencode.Invalid( "El nombre de usuario ya existe!!!", value, state ) else: return value
def crear_post(self,id=None): """Regresa la forma para crear una nueva entrada en el blog""" if id is not None: #estamos editando contenido = Session.query(Contenido).get(id) c.contenido = {'titulo':contenido.titulo, 'texto':contenido.texto,'id':contenido.id} return htmlfill.render(render("/derived/contenidos/nuevo.mako"),c.contenido) return render("/derived/contenidos/nuevo.mako")
def _to_python(self, value, state): if state is not None: if state.cambio: nombre_valido = Session.query(Contenido).filter_by( titulo=value).first() if nombre_valido is not None: raise formencode.Invalid("El título ya existe!!!", value, state) else: return value else: return value else: nombre_valido = Session.query(Contenido).filter_by( titulo=value).first() if nombre_valido is not None: raise formencode.Invalid("El título ya existe!!!", value, state) else: return value
def crear_post(self, id=None): """Regresa la forma para crear una nueva entrada en el blog""" if id is not None: #estamos editando contenido = Session.query(Contenido).get(id) c.contenido = { 'titulo': contenido.titulo, 'texto': contenido.texto, 'id': contenido.id } return htmlfill.render(render("/derived/contenidos/nuevo.mako"), c.contenido) return render("/derived/contenidos/nuevo.mako")
def _to_python(self,value,state): if state is not None: if state.cambio: nombre_valido = Session.query(Contenido).filter_by(titulo=value).first() if nombre_valido is not None: raise formencode.Invalid( "El título ya existe!!!", value, state ) else: return value else: return value else: nombre_valido = Session.query(Contenido).filter_by(titulo=value).first() if nombre_valido is not None: raise formencode.Invalid( "El título ya existe!!!", value, state ) else: return value
def guardar_usuario(self): """Guarda el nuevo usuario en la base de datos""" usuario = AuthUser() usuario.username = self.form_result["username"] usuario.email = self.form_result["email"] usuario.password = self.form_result["password"] group = Session.query(AuthGroup).filter_by(name=u'usuarios').first() group.users.append(usuario) Session.add(usuario) Session.add(group) Session.commit() c.usuario = usuario session['flash'] = u"Se agregó el usuario." session.save() return render("/index.mako")
def index(self, id): # Return a rendered template #return render('/usuarios.mako') # or, return a string c.usuario = Session.query(Usuario).get(id) return render("/derived/usuario/index.mako")
def setup_app(command, conf, vars): """Place any commands to setup quickcms here""" # Don't reload the app if it was loaded under the testing environment load_environment(conf.global_conf, conf.local_conf) # Drop and Create the tables if they don't already exist Base.metadata.drop_all(checkfirst=True, bind=Session.bind) Base.metadata.create_all(bind=Session.bind) #usuarios, etc por defecto u = AuthUser() u.username = u'test' u.password = u'test' u.email = u'*****@*****.**' Session.add(u) u2 = AuthUser() u2.username = u'chafita' u2.password = u'chafita' u2.email = u'*****@*****.**' Session.add(u2) g = AuthGroup() g.name = u'admin' g.users.append(u) Session.add(g) g_usuario = AuthGroup() g_usuario.name = u'usuarios' g_usuario.users.extend([u, u2]) Session.add(g_usuario) p_ver = AuthPermission() p_ver.name = u'ver' p_ver.groups.append(g_usuario) Session.add(p_ver) p = AuthPermission() p.name = u'edit' p.groups.append(g) Session.add(p) Session.commit() post = Contenido() post.titulo = u"Post de inicio" post.texto = u"Lorem ipsum dolor sit amet, consectetur adipiscing elit" post.usuario_id = u.id Session.add(post) Session.commit()
class ContenidoController(BaseController): @ActionProtector(has_permission('ver')) def index(self): """Regresa todos los contenidos""" c.contenidos = Session.query(Contenido).all() return render("/derived/contenidos/index.mako") def view(self, id): """Regresa la vista de un contenido""" c.contenido = Session.query(Contenido).get(id) return render("/derived/contenidos/view.mako") @ActionProtector(has_permission('edit')) def crear_post(self, id=None): """Regresa la forma para crear una nueva entrada en el blog""" if id is not None: #estamos editando contenido = Session.query(Contenido).get(id) c.contenido = { 'titulo': contenido.titulo, 'texto': contenido.texto, 'id': contenido.id } return htmlfill.render(render("/derived/contenidos/nuevo.mako"), c.contenido) return render("/derived/contenidos/nuevo.mako") # @validate(schema=FormaNuevoContenido(), form='crear_post') @ActionProtector(has_permission('edit')) def guardar_contenido(self, id=None): """Guarda en la base de datos el post recibido por la forma""" if id is not None: contenido = Session.query(Contenido).get(id) titulo_original = contenido.titulo schema = FormaNuevoContenido() #contra que voy a validar ControllerState = FormencodeState( ) #el estado que le voy a pasar al validador if request.params['titulo'] != titulo_original: ControllerState.cambio = True #en este caso el validador debe checar que el nuevo nombre sea unico else: ControllerState.cambio = False try: form_result = schema.to_python(request.params, ControllerState) except formencode.validators.Invalid, error: c.contenido = { 'titulo': request.params['titulo'], 'texto': request.params['texto'] } return htmlfill.render( render("/derived/contenidos/nuevo.mako"), c.contenido, error) contenido.titulo = form_result['titulo'] contenido.texto = form_result['texto'] contenido.editado = datetime.datetime.now() Session.add(contenido) Session.commit() return redirect( url(controller="contenido", action="view", id=contenido.id)) contenido = Contenido() contenido.titulo = self.form_result["titulo"] contenido.texto = self.form_result["texto"] usuario = request.environ.get('repoze.who.identity')['user'] contenido.usuario_id = usuario.id Session.add(contenido) Session.commit() return redirect( url(controller="contenido", action="view", id=contenido.id))
def view(self,id): """Regresa la vista de un contenido""" c.contenido = Session.query(Contenido).get(id) return render("/derived/contenidos/view.mako")
def index(self): """Regresa todos los contenidos""" c.contenidos = Session.query(Contenido).all() return render("/derived/contenidos/index.mako")
def init_model(engine): """Call me before using any of the tables or classes in the model""" Session.configure(bind=engine)
def index(self,id): # Return a rendered template #return render('/usuarios.mako') # or, return a string c.usuario = Session.query(Usuario).get(id) return render("/derived/usuario/index.mako")
def setup_app(command, conf, vars): """Place any commands to setup quickcms here""" # Don't reload the app if it was loaded under the testing environment load_environment(conf.global_conf, conf.local_conf) # Drop and Create the tables if they don't already exist Base.metadata.drop_all(checkfirst=True, bind=Session.bind) Base.metadata.create_all(bind=Session.bind) #usuarios, etc por defecto u = AuthUser() u.username = u'test' u.password = u'test' u.email = u'*****@*****.**' Session.add(u) u2 = AuthUser() u2.username = u'chafita' u2.password = u'chafita' u2.email = u'*****@*****.**' Session.add(u2) g = AuthGroup() g.name = u'admin' g.users.append(u) Session.add(g) g_usuario=AuthGroup() g_usuario.name = u'usuarios' g_usuario.users.extend([u,u2]) Session.add(g_usuario) p_ver = AuthPermission() p_ver.name = u'ver' p_ver.groups.append(g_usuario) Session.add(p_ver) p = AuthPermission() p.name = u'edit' p.groups.append(g) Session.add(p) Session.commit() post = Contenido() post.titulo = u"Post de inicio" post.texto = u"Lorem ipsum dolor sit amet, consectetur adipiscing elit" post.usuario_id = u.id Session.add(post) Session.commit()
def view(self, id): """Regresa la vista de un contenido""" c.contenido = Session.query(Contenido).get(id) return render("/derived/contenidos/view.mako")