繁体   English   中英

在Joomla Component 3.0中组合列表视图和搜索表单

[英]Combining list view and a search form in Joomla Component 3.0

我正在尝试在我的工作视图中添加搜索表单。 它应该是所有可用作业的列表以及可以过滤结果的搜索表单。 searh表单由复选框组成,这些复选框需要预先填充数据库数据。

所以我有很多问题。

  1. 我应该通过使用过滤器来实现这一目标还是朝着正确的方向前进?
  2. 我什至从哪里开始,我曾尝试在下面的视图中添加用于表单的代码,但我什至不知道我应该从哪个类继承。

由于“ JModelList”与getListQuery()结合使用。 我尝试了几个JForm等和继承的类,但是随后出现以下错误:“警告:为C:\\ Users \\ Nick \\ Documents \\ Dropbox \\ yourstudent \\ Development \\ Live \\ components \\ com_jobs \\中的foreach()提供了无效的参数第18行的views \\ jobs \\ tmpl \\ default.php“

我在创建表单方面没有任何麻烦,有一些很好的示例说明了对象上需要执行的操作。 但是当您要么a)将列表视图与表单组合在一起,要么b)不需要表单时,表单就可以像预填充数据的搜索表单一样工作。

我被困在本质上是合并这两个视图,我什至无法测试我的表单字段等是否正确。 以下是模型作业的摘要。 你们还需要其他代码来帮助我吗?

(这是我在这里的第一个问题,请耐心等待,如果需要,我会尝试调整我的问题。)

代码段

<?php

/* ------------------------------------------------------------------------
  # jobs.php - jobs Component
  # ------------------------------------------------------------------------
  # author    Breens Nick
  # copyright Copyright (C) 2013. All Rights Reserved
  # license   GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
  # website   www.nick.breens.be
  ------------------------------------------------------------------------- */

// No direct access to this file
defined('_JEXEC') or die('Restricted access');
// import the Joomla modellist library
jimport('joomla.application.component.modellist');

/**
 * Jobs Model
 */
class JobsModeljobs extends JModelList {

    /**
     * Method to build an SQL query to load the list data.
     *
     * @return      string  An SQL query
     */
    protected function getListQuery() {
        // Create a new query object.
        $db = JFactory::getDBO();
        $query = $db->getQuery(true);
        // Select some fields
        $query->select('*');
        $query->from('#__yourstudent_jobs');

        return $query;
    }
}

?>

感谢Joomla Coding 3.0子论坛上的论坛帖子 ,我得到了答案。

有人回答说,我应该在我的情况下使用过滤器,并在文章中使用我的组件。 然后,我搜索了一个不错的教程,然后发现了这个基于2.5的教程,教程仍然适用于3.0

如果有人感兴趣,我将在下面发布我的代码。 (模型代码保持不变。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM