Pregunta

necesito para acceder a mi sesión y se basa en la propiedad de sesión necesito material de agarre de la base de datos para su uso como opciones en mi desplegable.

$ _ SESSION es:

[sess_name] => Array(
   [properties] => Array(
      1=> Hotel A,
      2=> Hotel B
   ),
   [selected] => 1
)

Tengo que agarrar Hotel A partir seleccionada, y luego acceder a todas las cuentas bajo el Hotel A partir de la base de datos:

id  title                       hotel_id
------------------------------
1    Hotel A Twitter Account     1
2    Hotel B Facebook Account    2
3    Hotel A Facebook Account    1

Necesito identificadores de 1 y 3 porque mi hotel_id es 1 en el contexto de:

$this->addElement(  'select', 'account', array(
  'multioptions' => $NEED_IT_HERE
));

Aquí está mi código de consulta / sesión agarrar:

$cs = new Zend_Session_Namespace( SESS_NAME );
$model = new Model_DbTable_Social;
$s = "
    SELECT social_accounts.*
    FROM social_accounts
    LEFT JOIN social_media_outlets ON social_media_outlets.id = social_accounts.property
    WHERE social_accounts.property=".(int)$cs->selectedclient;

Tengo este código en mi página de formulario, pero tengo que moverlo a mi modelo ahora.

¿Fue útil?

Solución

Entonces, ¿dónde está el problema?

Hacer una consulta apropiada en su base de datos para conseguir esas cuentas.

Hacer una matriz adecuada del resultado. (Id => Título)

Se puede configurar opciones de elemento ya existente:

$element = $form->getElement('account');
$element->setMultiOption( $option_array );

Se puede crear un método en la clase de forma que acepte DB obj, Sesión obj y realizar las acciones necesarias para la carga y configurar esas opciones.


  

modelo, que se encuentra en la aplicación / módulos / foo / modelos / DbTable / Sociales, el nombre de la clase modelo es Model_DbTable_Social y el módulo es foo. Lanza Fatal error:

Su clase db-mesa, probablemente, se debe nombrar:

Foo_Model_DbTable_Social

Y application.ini debe contener:

resources.modules[] = 
; (It is autoloader for modules)
  

'Model_DbTable_Social' Clase cuando intento de invocar en mi forma. O es de esa manera que se menciona más fácil?

Es una buena práctica para pedir esos recursos en __construct como chelmertz dijo. Aquí está una charla agradable en tema relacionado: http://www.youtube.com/watch?v=-FRm3VPhseI

Es posible que desee leer mi pregunta de "dónde conectar las formas de los modelos": Zend-marco, y el patrón MVC: ¿qué tipo de capa debe conectar los datos entre los modelos y formas ? No hay muchas soluciones a través

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top