Joomla 3.2 - 查看$ this-> get(' Form')返回false然后返回表单

时间:2014-05-08 07:38:54

标签: php joomla joomla3.2

我对Joomla 3.2有一个奇怪的问题。

我遵循为Joomla 2.5编写的这个主要详细教程(http://library.logicsistemi.it/en/joomla/creating-a-mvc-master-detail-interface-in-joomla-2-5/47-create-a-mvc-master-detail-interface-in-joomla-2-5-part-1)。它非常直截了当,但我有一个非常讨厌的问题:在视图中,当我打电话给$ this-> get(' Form')时,它返回false。如果我打电话给$ this-> get(' Form'),它会返回表单!

我承认这不是正确的行为,因为如果那时我调用$ form-> getFieldset()我得到一个空数组......

我的代码:

视图/文件/ view.html.php:

defined('_JEXEC') or die('Restricted access');

jimport('joomla.application.component.view');

class MasterDetailViewDocument extends JViewLegacy
{
    function display($tpl = null)
    {
//      $form = $this->get('Form');
        $item = $this->get('Item');
        $form = $this->get('Form');
//die(var_dump($item));
    die(var_dump($form));
        $isNew = ($item->id < 1);
    }
}

模型/形式/ document.php:

<?xml version="1.0" encoding="utf-8"?>
<form>
    <fieldset>
        <field name="id" type="hidden" />
        <field name="fk_master" type="hidden" />
        <field name="name" type="text" label="Description" size="40" class="inputbox" />
        <field name="filename" type="media" directory="attachments" />
    </fieldset>
</form>

任何人都知道我做错了什么?为什么我要打两次电话给$ this-&gt; get(&#39; Form&#39;)?为什么$ form-&gt; getFieldSet()返回一个空数组?

1 个答案:

答案 0 :(得分:2)

我发现了问题:我的models / forms / document.php名称不正确。它必须是models / forms / document.xml。

更改名称后,一切正常。