Amigos,
estou precisando tirar uma dúvida com vocês!
Tenho duas tabelas: produtos e categorias.Â
-------------
Produtos
-------------
cod
nome
desc_produto
img_produto
preco
categoria_id
-------------
Categoria
-------------
id
nome
Fiz um sidebar gerar uma lista das categorias cadastradas no banco com um link contendo todos os produtos relacionados na categoria. E agora o que acontece, estou tentando ordenar pelo preço do produto.
Fiz um método no controller da seguinda forma:
$this->viewBuilder()->setLayout('buscar_categoria');
    $categoria = $this->Categorias->get($id, [
      'contain' => ['Produtos'],
      'order'  => ['Produtos.preco' => 'ASC']
    ]);
$this->set('categoria', $categoria);
Só que dessa forma dá erro: Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Produtos.preco' in 'order clause'.
Como eu faço pra acessar esse campo no meu controller de categorias?
----------------------
Model Categoria
----------------------
  public function initialize(array $config)
  {
    parent::initialize($config);
    $this->setTable('categorias');
    $this->setDisplayField('nome');
    $this->setPrimaryKey('id');
    $this->hasMany('Produtos', [
      'foreignKey' => 'categoria_id',
    ]);
  }
---------------------
Model Produtos
----------------------
parent::initialize($config);
    $this->setTable('produtos');
    $this->setDisplayField('id');
    $this->setPrimaryKey('id');
    $this->belongsTo('Usuarios', [
      'foreignKey' => 'usuario_id',
      'joinType' => 'INNER',
    ]);
    $this->belongsTo('Categorias', [
      'foreignKey' => 'categoria_id',
      'joinType' => 'INNER',
    ]);
Agradeço desde já a colaboração!