Ayuda con Form::dbSelect

241 views
Skip to first unread message

José Fabricio Jaramillo Díaz

unread,
May 25, 2015, 10:49:34 PM5/25/15
to kum...@googlegroups.com
Tengo una pequeña duda con el uso de este helper de la clase Form
Tengo un formulario en el cual estoy usando

Form::dbSelect

Este combobox es alimentado por la tabla:

Tabla Descuentos
id
descripcion
dscto1

Necesito que este combobox Form::dbSelect envie el valor dscto1 a la tabla:

Tabla Pedido
id
puntodeatencion_id
dscto1
fechapedido
observaciones
totalservicio

El problema es que este helper funciona bajo la convencion modelo.campo_id, como puedo hacer para que me envie el valor que necesito almacenar "dscto1" sin almacenar el valor campo_id.
Gracias por su ayuda.

Cristhian Lombana

unread,
May 25, 2015, 10:58:04 PM5/25/15
to KumbiaPHP Framework

Creo que toca consultar por el id en el controller?

--
Viva KumbiaPHP Framework!
http://www.kumbiaphp.com/
Ha recibido este mensaje porque está suscrito a Grupo "KumbiaPHP Framework" de Grupos de Google.
Para obtener más opciones, visita este grupo en http://groups.google.com/group/kumbia?hl=es.
---
Has recibido este mensaje porque estás suscrito al grupo "KumbiaPHP Framework" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a kumbia+un...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Iván Meléndez

unread,
May 25, 2015, 11:05:17 PM5/25/15
to kum...@googlegroups.com
También puedes armar un array consultando datos con el find, y los muestras con el select, no con el dbselect.

También puedes crear alias en el método find usando el parámetro colums: campo AS campo_alias

Saludos!

José Fabricio Jaramillo Díaz

unread,
Jun 5, 2015, 1:04:41 AM6/5/15
to kum...@googlegroups.com
Hola amigos gracias por su amable ayuda, pues la tres sugerencias que me dieron son muy directas y me sonaron muy simples de implementar pero me choco con una pared, pues no soy programador y aunque muero por serlo y me gusta mucho el proyecto kumbiaphp, no paso de ser un investigador autodidacta en la red, y por cierto me han ayudado mucho pero a veces me trunco en cosas tan basicas que me apena, pero bueno se que asi es esto. Asi que por favor como lo hago he buscado en todas las paginas de Kumbiaphp algún ejemplo y no lo encuentro. Probe con el find en la vista de formulario y con select pero no llego, me quedo en el camino, bueno tengo un ejemplo pequenito en el que trato de implemetarlo para luego aplicarlo a mi proyecto por favor ayudenme les paso los scripts. miren:
O por favor Christian me podrias indicar como hago para consultar el id en el controller. Gracias por su ayuda y si hay algo en lo que yo pueda ayudarles con el proyecto Kumbiaphp como transcribiendo o publicando algunas cosas que su tiempo no los deje pues lo hago y de paso aprendo. Gracias.

Modelo:
<?php
class Pedido extends ActiveRecord{
Entiendo que aca deberia implementar en metodo find pero no logro enterder como.
}

Vista:

<?php view::content();?>

<?php echo Form::Open();?>

<?php echo Form::label('Cliente:','cliente');?>

<?php echo Form::Text('pedido.cliente');?>

<?php echo Form::label('Descuentos:','pedido.descuentos_id');?>

<?php echo Form::dbSelect('pedido.descuentos_id');?>

<?php echo Form::submit('Enviar');?>

<?php echo Form::Close();?>

Crontroller:
<?php
Load::models('pedido');
class SistemaController extends AppController{

  public function formulario(){

if(Input::hasPost('pedido')){
         
            $ped = new Pedido(Input::post('pedido'));
            //En caso que falle la operación de guardar
            if($ped->save()){
                Flash::valid('Operación exitosa');
                //Eliminamos el POST, si no queremos que se vean en el form
                Input::delete();
                return;               
            }else{
                Flash::error('Falló Operación');

Julian

unread,
Jun 10, 2015, 11:51:05 AM6/10/15
to kum...@googlegroups.com
José que quieres hacer exactamente, si es una consulta a la BD la puedes hacer directamente en el controlador o creando una función en el modelo.

Ejemplo:
- En el controlador:
public function albumes()
    {
Load::models('albumes');
$tablaalbumes = new Albumes();
$this->albumes = $tablaalbumes->find('columns: id, albumes.nombre as nalbum','order: RAND()');
    }

- En la vista:
<?php if (isset($albumes)) {foreach($albumes As $i): ?>
<p value="<?php echo $i->id?>"><?php echo $i->nalbum></p>
<?php endforeach;} ?>

- En el modelo:
<?php
class albumes extends ActiveRecord {
}
?> 


Espero que te ayude. Yo también acabo de empezar, puede no ser el mejor código xdd
Reply all
Reply to author
Forward
0 new messages