Pregunta

The Error:

Database Error

Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Task.ticke_id' in 'on clause'

SQL Query: SELECT `Task`.`id`, `Task`.`title`, `Task`.`description`, `Task`.`assign_to`,
 `Task`.`ticket_id`, `Task`.`due_date`, `Task`.`status`, `Task`.`feedback`,
 `Task`.`deleted`, `Task`.`creator`, `Task`.`created`, `Task`.`updator`, `Task`.`updated`,
 `Ticket`.`id`, `Ticket`.`title`, `Ticket`.`description`, `Ticket`.`assign_to`,
 `Ticket`.`organ_id`, `Ticket`.`deleted`, `Ticket`.`creator`, `Ticket`.`created`
FROM `itsm`.`tasks` AS `Task`
LEFT JOIN `itsm`.`tickets` AS `Ticket` ON (`Task`.`ticke_id` = `Ticket`.`id`) 
WHERE `Task`.`deleted` IS NULL LIMIT 20 

My Query:

<?xml version="1.0" encoding="utf-8"?>
<list>
    <field>
    <name>Ticket.id</name>

    </field>
<joins>
        <table>tickets</table>
        <alias>Ticket</alias>
        <conditions>Ticket.id = Task.ticket_id</conditions>
    </joins>
</list>

What is the problem?

¿Fue útil?

Solución 2

You should change

ON (Task.ticke_id   = Ticket.id)

to

ON (Task.ticket_id   = Ticket.id)

Otros consejos

The problem was in the Model.... so if such problem arises we have to look in Model and the Controller too

<?php
App::uses('AppModel', 'Model');
/**
 * Task Model
 *
 */
class Task extends AppModel {


/**
 * Display field
 *
 * @var string
 */
    public $displayField = 'title';
        public $alias = 'Task';
        public $useTable= 'tasks';
    public $belongsTo = array(
        'Ticket' => array(
            'className' => 'Ticket',
            'foreignKey' => 'ticke_id',
            'conditions' => '',
            'fields' => '',
            'order' => ''
            ),

    );

}

The solution:- 'foreignKey' => 'ticke_id', 'foreignKey' => 'ticket_id',

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