Uliweb es una multiplataforma, fácil de usar y simple de proyectos de software de código abierto diseñado para actuar como un marco de desarrollo web para crear aplicaciones basadas en la web en sistemas operativos convencionales. Es fácilmente extensible, flexible, así como de despliegue en varias plataformas. Viene con suficiente código de ejemplo y documentation.Features legibles en una serie de características glanceKey incluyen un MVT (Modelo plantilla de vista) modelo de desarrollo, de gran alcance y asignación de URL flexible y modo de ejecución medio ambiente, ORM, I18n, extensiones incorporadas (despacho, middleware, etc.), herramientas de línea de comando, el apoyo a mod_wsgi en Apache, el apoyo a uwsgi, un servidor de desarrollo, y el aumento de la depuración.
Además, proporciona apoyo a los proyectos de organización, el apoyo a las plantillas de visualización, el modo de ejecución medio ambiente, así como la capacidad de dirigir el código Python en una plantilla. La aplicación no está escrito desde cero, lo que significa que se basa en varios proyectos existentes, incluyendo Werkzeug y SQLAlchemy.
Entre otras características, podemos mencionar el apoyo a mod_wsgi en Apache, el apoyo a uwsgi, un servidor de desarrollo que se recarga automáticamente cada vez que un módulo es modificado, mejorado soporte de depuración, una extensión de despacho, una extensión de middleware, y una potente interfaz de línea de comandos ( CLI) que le permite crear proyectos, aplicaciones, archivos estáticos de exportación y construir un desarrollo web server.Under el capó y apoyado OSesThe software está escrito enteramente en el lenguaje de programación Python, lo que significa que se pueden ejecutar en cualquier sistema operativo de la computadora donde Python está disponible e instalado. Se ha probado con éxito con muchos sabores de GNU / Linux, así como con los sistemas operativos Microsoft Windows y Mac OS X. Uliweb sólo está disponible para su descarga como un archivo comprimido de origen, lo que significa que el usuario necesita para configurar y compilarlo antes de la instalación. Es prácticamente instalable en cualquier plataforma GNU / Linux, y se puede encontrar en los repositorios de software por defecto de las distribuciones seleccionadas de Linux, que se ejecutan en plataformas de 32 bits y 64 bits de hardware.
¿Cuál es nueva en esta versión:
- plantilla config Fix y añadir soporte de shell uwsgi
- Añadir variables de entorno apoyan en settings.ini. Por ejemplo, hay una MYSQL_PORT definido en el entorno, para que puedas definido algo en settings.ini:
- [DEFAULT]
- port = $ MYSQL_PORT
- port_str = '$ {MYSQL_PORT}'
- $ MYSQL_PORT es lo mismo que $ {} MYSQL_PORT. Justo cuando la variable sigue identificador, por lo que $ {} puede separar fácilmente entre ellos.
- Añadir configuración STATIC_COMBINE_CONFIG, puede alternar combinación estática con él. El valor predeterminado es False. La configuración es:
- [STATIC_COMBINE_CONFIG]
- enabled = false
- Fijar aplicación objcache error, si no campos definidos en la configuración, se usarán todas las columnas de la tabla
- Añadir función get_table a funciones, puede utilizarla para conseguir una tabla de objetos. Utilizado en uliweb.contrib.tables aplicación.
- Añadir local_cache a local en SimpleFrame, y se puede utilizar para almacenar requerir valores de caché relativos, y que va a estar vacío después de cada proceso requiere.
- Mejorar get_object () en ORM, añada el parámetro use_local, por lo que el valor almacenado en caché se comprobará en local_cache primeramente, y también guardarlo en local_cache cuando obtener un valor de la memoria caché o base de datos.
- Mejorar objcache formato de configuración, también puede definir la tabla como esta:
- user = {'campos': ['nombre de usuario'], 'vencerá': expire_time, "clave": invocable (instancia) | key_field}
- # o
- user = ['nombre de usuario', 'apodo']
- # o
- user =
- Si no hay campos definidos, que va a utilizar todos los campos del modelo. Y si expira es 0 o no definido, no va expiró a todos.
- tecla se puede utilizar para sustituir id, si quieres otro valor fundamental, y puede ser también un objeto exigible, que va a recibir una instancia de parámetro de modelo, por lo que puede crear cualquier valor clave como desee.
- Añadir soporte de Control de concurrencia optimista para ORM, por lo que debería versión campo definido por primera vez en modelo, a continuación, cuando se guarda el objeto, se debe utilizar:
- obj.save (ocup = True)
- Si ya hay otra operación guarda el registro, que va a lanzar una excepción SaveError por defecto, ya que la versión se ha cambiado. También se puede pasar:
- occ_fieldname utilizado para definido la versión nombredecampo, por defecto es la versión
- occ_exception utilizado para Excepción habilitado planteado, por defecto es cierto que si se establece False volverá falso, pero no provoca una excepción.
¿Qué hay de nuevo en la versión 0.2.4:
- Fix ORM no es compatible con SQLAlchemy 0.9.1 . Viejo estilo:
- cond = Ninguno
- cond = (Blog.c.id == 5) y Ninguno
- no lo hará justo en 0.9.1, ya que ninguno no se omitirá, así que usted puede cambiar el código anterior cond = Ninguno para:
- de sqlalchemy.sql importación true
- cond = true ()
- de uliweb.orm importación true
- cond = true ()
- añadir __contains__ a las funciones, por lo que puede probar si una API ya está definido, sólo tiene que utilizar:
- 'flash' en funciones
- Refact generic.py, retire functions.flash y functions.get_fileserving dependencias de forma predeterminada.
- Soporte rendimiento Fix en función de vista, también puede utilizado en el ambiente GEvent, por ejemplo:
- expose ('/ test')
- prueba def ():
- rendimiento & quot; & quot;
- for i in range (10):
- rendimiento & quot;% d & quot; % (I + 1)
- sueño (1)
- rendimiento & quot; & quot;
- rawsql Fix () bug para diferentes motores de base de datos
- jsonp Fix () vuelca caracteres bug china
- Añadir trim_path () para utils / common.py, puede recortar una ruta de archivo a la longitud limitada, por ejemplo:
- & gt; & gt; & gt; a = '/project/apps/default/settings.ini'
- & gt; & gt; & gt; trim_path (a, 30)
- '... / apps / default / settings.ini'
- Default longitud limitada es 30.
- Agregar información de conexión de salida ORM cuando se les da la opción -v en la línea de comandos. Y la contraseña será reemplazar con '*'. Por ejemplo:
- $ & gt; uliweb syncdb -v
- Conexión: mysql: // blog:? *** @ Localhost / blog charset = UTF-8
- [default] Creación [1/1, el blog] blog ... EXISTIDO
- Añadir soporte aplicaciones múltiples para el comando MakeApp, así que usted puede utilizar:
- MakeApp uliweb a b c
- para crear a, b, c aplicaciones a la vez el tiempo.
- save_file Refactor () proceso, agregar encabezados y convertidores parámetro.
- encabezados utilizan para crear encabezado csv en lugar de utilizar el nombre de columna, pero se pueden crear alias de esta manera:
- User.c.username.label (u & quot; Nombre & quot;)
- y convertidores utilizan para convertir el valor de columna, por ejemplo:
- nombre def (valor, los datos):
- & quot; & quot; & quot;
- valor es el valor de la columna
- de datos es el objeto del registro actual
- & quot; & quot; & quot;
- valor de retorno + 'test'
- save_file (do_ (seleccionar ([User.c.name])), 'test.csv', convertidores = {"nombre": nombre})
- call_view Fix () invocar bug wrap_result. Falta un parámetro controlador pase a wrap_result.
Requisitos :
- Python
Comentarios que no se encuentran