smartwig + silex

21 views
Skip to first unread message

Jalo

unread,
Jul 31, 2014, 12:23:41 PM7/31/14
to jquer...@googlegroups.com
Amigos,

Estoy tratando de implementar el smartwig para usarlo con SILEX, pero al colocar en composer.json, en el requiere "yepsua/smartwig": "dev-master" y realizar el update me sale:
-----------------------------------------------------------------------------------------------------------------------------
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for yepsua/smartwig dev-master -> satisfiable by yeps
ua/smartwig[dev-master].
    - yepsua/smartwig dev-master requires yepsua/jquery4php 1.1.x-dev -> no matc
hing package found.
-----------------------------------------------------------------------------------------------------------------------------

y cuando adiciono "yepsua/jquery4php": "dev-master", y ejecutar el update, me sale:

-----------------------------------------------------------------------------------------------------------------------------
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for yepsua/jquery4php dev-master -> satisfiable by ye
psua/jquery4php[dev-master].
    - yepsua/smartwig dev-master requires yepsua/jquery4php 1.1.x-dev -> satisfi
able by yepsua/jquery4php[1.1.x-dev].
    - Can only install one of: yepsua/jquery4php[dev-master, 1.1.x-dev].
    - Installation request for yepsua/smartwig dev-master -> satisfiable by yeps
ua/smartwig[dev-master].
-----------------------------------------------------------------------------------------------------------------------------

estoy haciendo algo mal?

Gracias de antemano.

Jalo.

oyepez003

unread,
Jul 31, 2014, 12:40:15 PM7/31/14
to jquer...@googlegroups.com
Enviame el composer.json para ver que dependencias estas colocando.

Saludos cordiales.

Jalo

unread,
Jul 31, 2014, 2:16:16 PM7/31/14
to jquer...@googlegroups.com
este es:

{
    "name": "fabpot/silex-skeleton",
    "description": "A pre-configured skeleton for the Silex microframework",
    "license": "MIT",
    "type": "project",
    "require": {
        "php": ">=5.3.3",
        "silex/silex": "~1.0",
        "silex/web-profiler": "~1.0",
        "symfony/browser-kit": "~2.3",
        "symfony/class-loader": "~2.3",
        "symfony/config": "~2.3",
        "symfony/console": "~2.3",
        "symfony/css-selector": "~2.3",
        "symfony/debug": "~2.3",
        "symfony/finder": "~2.3",
        "symfony/form": "~2.3",
        "symfony/monolog-bridge": "~2.3",
        "symfony/process": "~2.3",
        "symfony/security": "~2.3",
        "symfony/translation": "~2.3",
        "symfony/twig-bridge": "~2.3",
        "symfony/validator": "~2.3",

        "doctrine/dbal": "2.*",
        "symfony/doctrine-bridge": "2.*",
        "dflydev/doctrine-orm-service-provider": "1.0.*@dev",
        "symfony/yaml": "2.*",
        "adldap/adldap": "dev-master",
        "yepsua/jquery4php": "dev-master",
        "yepsua/smartwig": "dev-master"
    },
    "autoload": {
        "psr-0": { "": "src/" }
    },
    "extra": {
        "branch-alias": {
            "dev-master": "1.1.x-dev"

oyepez003

unread,
Jul 31, 2014, 2:44:47 PM7/31/14
to jquer...@googlegroups.com
Ok...

Debes colocar en el composer,json solo "yepsua/smartwig" como dependencia ya que ella depende de jQuery4PHP. También es mejor que uses la versión "1.1.*@dev" de SmarTwig.

    "require": {
         ...
        "yepsua/smartwig": "1.1.*@dev"
    },

Finalmente coloca esta configuración en tu comoser.json luego de la opcion "extra"

...

"extra": {
        "branch-alias": {
            "dev-master": "1.1.x-dev"
        }
    },
"prefer-stable": true,
"minimum-stability": "dev"

...

Con eso deberías poder instalar satisfactoriamente SmarTwig.

Jalo

unread,
Jul 31, 2014, 2:54:01 PM7/31/14
to jquer...@googlegroups.com
Corrio sin probelmas, muchas gracias, quedaria bajar los assets y usar el short way para su uso verdad? o tambien se puede con the pretty way???

oyepez003

unread,
Jul 31, 2014, 3:16:27 PM7/31/14
to jquer...@googlegroups.com
Si exactamente puedes bajarte los assets desde:

https://github.com/oyepez003/jquery4php-assets

Ese repositorio tiene una archivo llamado "smartwigAssets.html" que puedes incluir en el layout de tu aplicacion... recuerda que ese archivo importa todos los js y css de smartwig asi que modificalo para incluir solo lo que tu necesitas.

Copia y pega el archivo donde tengas tu archivo layout.html e incluyelo en el layout asi:
    
     <head>
     ...
     {% include 'smartwigAssets.html' %}
     ...
     </head>

Luego lo que tienes que hacer es en el archivo app.php de tu aplicacion Silex en la parte que configuras el Twig asignar La extension de SmarTwig asi:

$app['twig'] = $app->share($app->extend('twig', function ($twig, $app) {
    // add custom globals, filters, tags, ...
    $twig->setExtensions(
        Yepsua\SmarTwig\Twig\Extension\SmarTwigExtension::getAllExtensions()
    );
    return $twig;
}));

Esa ultima forma es como dice en la documentacion "The short way" si quieres usar "The pretty way" debes agregar el componente"symfony/dependency-injection" en tu proyecto.

Saludos cordiales.

Jalo

unread,
Jul 31, 2014, 3:58:49 PM7/31/14
to jquer...@googlegroups.com

Funciona de maravillas, eres muy capo, muchas gracias!!!!!!!

Jalo

unread,
Aug 12, 2014, 12:29:05 PM8/12/14
to jquer...@googlegroups.com
Amigo,

estoy explotando al maximo el jqgrid, que es lo que mas uso para poder motrar la data que se gener aen base de datos, sin embargo hay algunas opciones del grid que no pude configurar, hay manera que el ancho de las columnas se configure a ancho de la data que lo contiene? estaba probando con $grid->setShrinktofit(array(true)); y     $grid->setForcefit(true); y no pude obtener los resultados deseados.


Adicionalmente, vi que se podria usar el jqgrid como un formulario para el cambio de la data o para usar como CRUD, como se podria lograr esto?

de antemano muchas gracias por esta excelente herramienta ya que jquery como tal no lo manejo.

Jalo.

oyepez003

unread,
Aug 12, 2014, 2:05:03 PM8/12/14
to jquer...@googlegroups.com
Hola Jalo.

jqgrid tiene ese problema del ancho de las columnas desde que fue creado, Si no colocas un tamaño a cada columna el le coloca uno por defecto, Eso significa que  si tienes un grid con dos columnas se va a ver pequeñisimo y la data se corta visualmente al tamaño por defecto que le da jqgrid a sus columnas. Lo que puedes hacer es asignarle a cada columna un tamaño

$columna->setWidth(200);

O asignarle autowidth al grid para que tome el 100% del ancho de la pagina.

$columna->setAutoWidth(true);

Con respecto a lo de editable pues puedes hacerlo guiandote por estos ejemplos:


Saludos cordiales.

Jalo

unread,
Aug 12, 2014, 2:29:00 PM8/12/14
to jquer...@googlegroups.com
Muchas gracias por tu pronta respuesta, ahora mismo me pongo a revisar los links que me mandaste.

Jalo

unread,
Oct 6, 2014, 6:24:50 PM10/6/14
to jquer...@googlegroups.com
Estimado Omar,

ya usando smartwig, sobre todo el jgrid, tengo la necesidad de mostrar la data agrupada, es decir usar el subgrid, en la pagina de jque4php tiene la linea:

$grid->searchExpandedContentIn('examples/response/subGridResponse.php');

Cual seria el contenido de este archivo?

Lo que necesito mostrar es:

Tengo un conjunto de procesos que se ejecutan en paralelo en serie, en 10 colas.

El grid agrupado mostraria los estados y cantidad de los registros que se estan procesando.

Y el subgrid mostraria la cola y cantidad del estado que expanderia.

Muchas gracias de antemano por tu colaboracion.

oyepez003

unread,
Oct 6, 2014, 8:44:36 PM10/6/14
to jquer...@googlegroups.com
Hola Jalo el codigo de ese archivo lo puedes encontrar en el showcase de jQuery4PHP


Carpeta: showcase\examples\response

Simplemente tienes que responder un objeto YsGrid llamando al metodo draw();

Si usas Silex pues simplemente creas una ruta asociada a un controlador (funcion u objeto) que cree el Grid y en un atributo del controlador le asignas lo que devuelve el metodo draw()

$grid = $tuGrid->draw();

Y en twig solo lo imprimes:

{{ grid }}

Y listo asi deberia funcionar.

Saludos.
Reply all
Reply to author
Forward
0 new messages