Poniendo en marcha Yii2 en Windows

yii2framework
yii2framework

Luego de recibir un comentario donde preguntaban como poner en marcha el nuevo yii en un ambiente windows donde no siempre se tiene acceso al composer, es que decidí escribir un artículo que sirviera de guía para aquellos que desean experimentar este framework en su nueva versión (espero que esto te ayude Miguel).

Paso #1 – La descarga

Lo primero es descargar Yii2 desde la página de Yii, yo utilizaré este enlace https://github.com/yiisoft/yii2/releases/download/2.0.2/yii-advanced-app-2.0.2.tgz (versión avanzada que aún no he comparado con la básica y no se cuales son sus diferencias).

Paso #2 – La descompresión

Una vez descargado el framework, me dispongo a ponerlo en la carpeta www de mi servidor (yo utilizo lamp desde siempre), lo que se extrae es una carpeta llamada “advanced” y básicamente ese es el esqueleto del futuro proyecto.

Paso #3 – Revisión de requerimientos

Ahora teniendo la carpeta “advanced” en el “www” (web folder), solamente debo iniciar mi servidor y dirigirse hacia http://localhost/advanced/requirements.php para verificar que cumplen con los requisitos para que el framework y la aplicacion funcionen correctamente.

Paso #4 – Configuración e inicialización

En este caso que he tomado la plantilla “advanced”, hay que hacer un par de cosas antes de poner en marcha la aplicación, si hubiese seleccionado la plantilla “basic”, simplemente con apuntar a http://localhost/basic/web y unos ajustes mínimos a config/main ya estaría funcionando.

Entonces, sigamos… si cumplen con los requerimientos mínimos del framework, ahora deben ubicar el archivo init.bat y yii.bat (sólo windows), abrirlos en modo edición y modificarlos en la línea donde se ubica a php.exe, la idea es que hay que poner el path completo del php.. en mi caso es algo como “set PHP_COMMAND=C:\wamp\bin\php\php5.5.12\php.exe”, ahora que eso está hecho, ingreso en el modo comando de windows (CMD), navego hasta la carpeta “advanced” y ejecuto el comando init.bat.

Si lo del ini.bat funcionó ahora deben configurar su BD, es está ubicada en advanced/commom/config/main-local, en el archivo viene por omisión una bd llamada yii2advanced y fue con ese mismo nombre que cree mi nueva BD, ahora que tenemos nuestra conexión a datos lista, utilizamos el comando migrate a través de yii.bat, entonces nuevamente en la consola hacemos yii.bat migrate y finalizamos, ese comando creará la tabla user con la cual desde la url http://localhost/advanced/frontend/web podremos utilizar a través de un formulario de registro y login.

Plus – Por si necesitan Gii

Y casi lo olvido, eso del Gii.. para utilizarlo simplemente hay que apuntar hacia http://localhost/advanced/frontend/web/index.php?r=gii, podrían utilizar http://localhost/advanced/frontend/web/gii aunque para eso necesitarán configurar las url y modificar el .htaccess del proyecto.

Happy Coding

Co-fundador de Qbit Mexhico, usuario de linux, Developer en tecnologías web.. Nicaragüense, centro en basketball, primer centro en rugby y pintor los fines de semana. Ortögrafo y ambientalista psicológico (de escritorio).. ese soy yo!

Si te ha servido compártelo y difunde nuestro blog..

Twitter LinkedIn Flickr YouTube 

5 thoughts on “Poniendo en marcha Yii2 en Windows

  1. excelente ! felicitaciones, claro y facil tus instrucciones para poner a funcionar yii2.

    el unico detalle es que cuando ingresas en el modo comando de windows (CMD), navegas hasta la carpeta “advanced” y ejecutas el comando init.bat , te pregunta si deseas iniciar con modo development o production, del resto bien, mil felicitaciones !

  2. Cordial saludo
    Estoy atorado con los namespace, por cuanto en el modelo me acepta appa\models, pero en el controller me pide frontend\models, el lio es que en unos lados me fciona con el uno y en otros con el otro, como y donde (apenas si conozco) puedo arrglar este asunto

    1. Hola Guillermo, debes de tener una confusión con los nombres o el uso de los namespaces de php .. revisa que los nombres que has definido sean los mismos que estás utilizando, recuerda que eso es “camel case” y se deben escribir tan cual fueron definidos.. además de que una buena practica es que los namespaces tengan una raíz en común, quizás ProyectoNombre/Models para los modelos y ProyectoNombre/Controllers para tus controladores.

      Sin ver algo de código es un poco difícil ayudarte, pero espero que el comentario te sirva de algo.

      Saludos

  3. hola saludos a todos

    mi consulta es para saber como puedo exportar a un excel solo la información que necesite no toda la que tengo en la tabla estoy utilizando phpExcel ya tengo los métodos y la vista de exportación pero cuando realizo la búsqueda de lo que necesito y voy a exportar me saca todo lo de la tabla me podrían ayudar….

    Gracias…

    1. Hola Jefferson, y que tal si utilizas un criteria y especificas mediante un select las columnas que quieres exportar. En caso de que aun así yii siempre retorne todas las columnas aunque sin valor, deberás recorrer los resultados y separar lo que necesitas de lo que no.

      Saludos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *