Série da semana: Primeiros passos no React

Veja mais

Select com inner join, CakePHP

25/11/2015

1

Estou com um probleminha a algum tempo referente a um projeto que estou desenvolvendo em cakephp, minha view não consegue ler um select com inner join da tabela.

Controller:
public function initialize()
       {

           $posts = $this->Posts->find("all",array(
              "joins" => array(
                  array(
                    "table" => "users",
                    "alias" => "User",
                    "type" => "INNER",
                    "conditions" => array("Post.user_id = User.id "),
                    "fields" => array('Post.*', 'User.username')
                   )
               )
            )
         );


Model:
public function initialize(array $config) {
		$this->addBehavior('Timestamp');
		$this->displayField('title');
		$this->belongsTo('User'); //belongsTo que é a associação que estou fazendo entre o cake e o join;
	}


View:
<?= $post->username ?>


Dessa forma, na minha view, me retorna NULL, se eu fizer a view:
<?= $post->user->username ?>
retorna um erro que nao encontra o obejto "user".

Explicando melhor, meu código sql esta assim:
SELECT posts.*, users.username
FROM posts
  inner join users on (posts.user_id = users.id )


essa consulta está buscando o "username" da tabela A para a tabela B, sendo que essa tabela B minha view consegue fazer a leitura normalmente. Com esse select meu banco traz a consulta exatamente que eu preciso, mas minha view não mostra o resultado e retorna nulo.

Se alguém puder me dar um dica, Obrigado.
Responder

Posts

26/11/2015

Lucas

alguem?
Responder