2008-10-14 23 views
9

Estoy buscando un marco que sea apropiado para principiantes (en Python y desarrollo web).qué marco de python utilizar?

Ya he descubierto sobre Django y web.py. Creo que una de las cosas más importantes para mí es una buena documentación.

Gracias por la ayuda, Dan

Respuesta

10

creo Django tiene algunos de los mejores documentación de cualquier proyecto en el que he trabajado. Esa es la razón por la que lo elegimos en Turbogears hace dos años, y ha sido la mejor elección de tecnología que hemos hecho.

+0

I second Django. Realmente agradable marco y API. Siento que es la forma en que deberían funcionar los marcos web. – Bazman

+0

Acepto que la documentación es mejor que TurboGears. Sin embargo, en realidad no he usado ninguno, así que no puedo decir cuál es mejor/más fácil de usar. – crystalattice

3

Django es increíblemente bueno. Guido lo usa (trabajando en Google). Es la razón principal por la que me encuentro trabajando más en Python que en Lua.

3

DanJ, ​​he aquí una buena lista de todos los marcos de Python conocidos: http://wiki.python.org/moin/WebFrameworks

Yo recomiendo mirar los artículos de Wikipedia para Django, Turbogears, Pylons, etc. [escribí un artículo sobre web.py vez , pero se eliminó :-(] Explican las diferencias filosóficas y de componentes entre los marcos bastante bien.

Personalmente, me gusta mucho TurboGears ya que se basa en componentes conocidos, CherryPy (para web y URL enrutamiento), Kid (para plantillas) y SQLObject (para asignación relacional de objetos). Me gusta que hayan resistido el impulso de "r usted mismo "para todos los componentes, y creo que el resultado es muy pitónico y fácil de usar.

Pero debe mirar algunos ejemplos de código y tutoriales, y decidir lo que más le convenga.

1

También debe echar un vistazo a web2py que tiene buenos documentos y es un marco muy agradable para crear aplicaciones wep.

1

Es posible que desee mirar Karrigell. Tiene múltiples opciones para programar la sintaxis, p. Python puro, HTML puro con scripts Python, combinación, etc. No sé qué tan bien se escala porque no lo he usado durante varios años, pero es bueno para mojarse los pies con frameworks web.

+0

Absolutamente excelente para principiantes y aquellos a los que les gusta la flexibilidad, y la documentación es bastante buena, aunque en un tipo de inglés de sonido francés. La versión 3.0.1 hizo algunas cosas más consistentes, y la utilizo para la mayoría de mi trabajo web que no es .NET. – JasonFruit

1

Haciéndome eco de la respuesta de unos pocos, sugiero Django. por algunas razones simples:

  1. Sigue la arquitectura MVC estándar.
  2. Puede modularizar toda su aplicación directamente desde el modelado db.
  3. Extensa documentación y libros basados ​​en ejemplos/proyectos en línea gratuitos disponibles.
  4. Muchos proyectos basados ​​en web de código abierto para referencia disponibles.
+0

+1. Excepto que Django no es MVC sino MTV (modelo-vista-plantilla). – muhuk

0

Supongo que está hablando de un marco web. He usado CherryPy, y me pareció bastante útil. Intente usar cada uno para codificar una solución simple, y vea cuánto se alinea con su estilo de programación.

10

web.py?

Es extremadamente simple, y Python'y. Una aplicación web básica de hello-world es ...

import web 

urls = (
    '/(.*)', 'hello' 
) 

class hello:   
    def GET(self, name): 
     i = web.input(times=1) 
     if not name: name = 'world' 
     for c in range(int(i.times)): 
      print 'Hello,', name+'!' 

if __name__ == "__main__": web.run(urls, globals()) 

.. eso es todo.

me encontré con Django forzó una gran cantidad que es propia convenciones y diseño de código, y nunca pude recordar el middleware/importaciones accesos directos, y todos los demás "mágica" que está prácticamente obligado a escribir nada. Descubrí que estaba más cerca de Ruby on Rails que de un framework web de Python.

Con web.py, puede escribir un todo, el funcionamiento de aplicaciones web sin necesidad de utilizar cualquiera de los módulos de ayudante de web.py - la única cosa que tiene hacer es import web y la configuración de las direcciones URL, que es algo inevitable. (la última línea del ejemplo ejecuta el servidor web de desarrollo)

Tiene muchas cosas en su interior, como una API de base de datos, formularios auxiliares, un motor de plantillas, etc., pero no los fuerza sobre usted - ¡Podrías hacer toda tu salida de HTML por print "Using <b>%s</b>" % (" string formating ".strip()) si así lo deseas!

Oh, aunque he enfatizado la simplicidad, web.py es lo que http://reddit.com está escrito, por lo que también se ha demostrado que es muy capaz/confiable. Además, this post por el autor web.py es una muy buena explicación de por qué prefiero web.py a Django

+2

Alas, reddit ahora está escrito en Pylons, lo último que escuché. Me gusta web.py para proyectos pequeños * mucho * sin embargo. –

0

He escrito aplicaciones web con wsgi en bruto. Tal vez lanzando mi propia biblioteca en algún momento. No me gustan los grandes frameworks y tal. Aprendí a odiar http mientras escribía en wsgi en bruto. No te gusta mucho después de que te des cuenta de la cantidad de análisis e interpretación estúpidos que necesitas para subir un archivo.

Gracias a wsgi, python tiene toneladas de estructuras de diferentes calidades. Si quieres probar mi camino, supongo que quizás quieras saber werkzeug. Proporciona algunas cosas cuando aún no sabe cómo hacerlo. Solo tiene quizás demasiado 'marco' para mí. Al final, el marco muy bien escrito debería exceder lo que he escrito en wsgi.

Cuestiones relacionadas