Zend Framework:如何编写使用另一个表的正确模型?

发布于 2024-11-03 00:46:35 字数 1037 浏览 3 评论 0原文

我的项目中的模型使用多个表进行选择。

我怎样才能更正确地编写这样的代码?

公共函数__construct() {

 $this->_name = DB_PREFIX 。 “老师”;
   父级::__construct();

}

公共函数init() {

 $this->db = Zend_Db_Table::getDefaultAdapter();

}

公共函数 getTeachers($course_id) {

 $students_query = $this ->db->select()
                          ->from($this->_name, '')
                          ->from(, array('uid', 'ulogin'))
                          ->where(".uid = {$this->_name}.teacher_id")
                          ->where("{$this->_name}.course_id = ?", $course_id)
                           ->order(".ulogin");

  $result = $this->db->fetchAll($students_query) ? $this->db->fetchAll($students_query) : NULL;

  返回$结果;

}

I have models in project that use more than one table to select.

How can I write code like this more correct?

public function __construct()
{

   $this->_name = DB_PREFIX . 'teachers';
   parent::__construct();

}

public function init()
{

  $this->db = Zend_Db_Table::getDefaultAdapter();

}

public function getTeachers($course_id)
{

  $students_query = $this ->db->select()
                          ->from($this->_name, '')
                          ->from(<ANOTHER_TABLE_NAME>, array('uid', 'ulogin'))
                          ->where("<ANOTHER_TABLE_NAME>.uid = {$this->_name}.teacher_id")
                          ->where("{$this->_name}.course_id = ?", $course_id)
                           ->order("<ANOTHER_TABLE_NAME>.ulogin");

  $result = $this->db->fetchAll($students_query) ? $this->db->fetchAll($students_query) : NULL;

  return $result;

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

风渺 2024-11-10 00:46:35
$students_query =  $this->db->select()
                          ->from($this->_name, '')
                          ->setIntegrityCheck(false)
                          ->join('<ANOTHER_TABLE_NAME>', "<ANOTHER_TABLE_NAME>.uid = {$this->_name}.teacher_id", array('uid', 'ulogin'))
                          ->where("{$this->_name}.course_id = ?", $course_id)
                          ->order("<ANOTHER_TABLE_NAME>.ulogin");
$students_query =  $this->db->select()
                          ->from($this->_name, '')
                          ->setIntegrityCheck(false)
                          ->join('<ANOTHER_TABLE_NAME>', "<ANOTHER_TABLE_NAME>.uid = {$this->_name}.teacher_id", array('uid', 'ulogin'))
                          ->where("{$this->_name}.course_id = ?", $course_id)
                          ->order("<ANOTHER_TABLE_NAME>.ulogin");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文