Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于cakePHP的票务系统_Php_Cakephp_Cakephp 2.2 - Fatal编程技术网

基于cakePHP的票务系统

基于cakePHP的票务系统,php,cakephp,cakephp-2.2,Php,Cakephp,Cakephp 2.2,我正在尝试为我们公司的IT相关问题创建一个票证类型的系统 该票务系统应按如下方式工作: 用户登录并提交和“IT查询” 查询以唯一ID保存,并通过邮件发送给用户 查询将邮寄至IT部门 将记录对查询的响应,当用户查看查询时,可以看到所有这些响应 我对最后一颗子弹有些问题 由于我使用的是两个数据库(具有唯一id ticket\u id的it\u查询和具有外国id ticket\u id的it\u响应),因此我必须在彼此中有3个视图才能工作 我有以下想法: 我将如何实现这一点,或者是否有一种更简单

我正在尝试为我们公司的IT相关问题创建一个票证类型的系统

该票务系统应按如下方式工作:

  • 用户登录并提交和“IT查询”
  • 查询以唯一ID保存,并通过邮件发送给用户
  • 查询将邮寄至IT部门
  • 将记录对查询的响应,当用户查看查询时,可以看到所有这些响应
我对最后一颗子弹有些问题

由于我使用的是两个数据库(具有唯一id ticket\u id的it\u查询和具有外国id ticket\u id的it\u响应),因此我必须在彼此中有3个视图才能工作

我有以下想法:


我将如何实现这一点,或者是否有一种更简单的方法来实现这一点?

要存档这一点,您需要在模型中定义所有正确的关联

根据您的问题,我猜您的ItRequest模型与ItResponse有很多关系,因此您的响应表直接与请求表有一对一的关系

所以定义它,然后在控制器中查询它,并根据需要在视图文件中显示它


正如迪佩什所说,您应该正确地关联表格,以使事情变得更简单、更快。此外,我建议您使用,不仅用于控制器、模型和视图,而且用于数据库设计。 这将为你节省大量的工作和头痛。 你可以利用它

除此之外,我不认为使用不同的观点有什么意义。您可以使用元素(view/eElements/),但我会做得更简单

您应该考虑到一个控制器可以(而且可能会)使用多个模型。这样,您的
ticketController
中的
view
操作也可以调用
it\u responses
表,并在另一个数组中检索数据

例如:

class TicketsController extends AppController {
    //using the It_response model
    var $uses = array('Ticket' , 'It_response');


    public function view($id){
        $ticketData = $this->Ticket->find('all', array('conditions' => array('Ticket.id' => $id));

        $responsesData = $this->It_response->find('all', array('conditions' => array('It_response.ticket_id' => $id));

        //setting the variables in the ticket view.
        $this->set('ticket', $ticketData);
        $this->set('responses', $responsesData);

    }
无论如何,如果您的票证正确链接到响应模型,您只需要执行一个包含响应数组的查询