【问题标题】:Joomla custom component item referencesJoomla 自定义组件项参考
【发布时间】:2013-07-31 07:53:05
【问题描述】:

我一直按照本指南成功创建 Joomla 自定义组件:http://docs.joomla.org/J2.5:Developing_a_MVC_Component/Introduction

为简单起见,假设我有两张桌子,一张用于作者,一张用于书籍。

--作者-- ID 名称

--书籍-- ID 姓名 作者参考文献

两者都有两个视图,一个列表视图和一个编辑视图。当我在列表视图中单击作者时,它会将我带到书籍的列表视图,以查看作者写了哪些书籍,并且只有那些书籍会过滤掉其他书籍。

问题从这里开始,当我单击 Joomla 中的“新建”按钮时,我想向该特定作者添加一本书,但无法设置该参考。到目前为止,我在单击作者时使用 Session 变量设置了该引用,但这有明显的缺陷,例如在新选项卡中打开另一个作者会更改 Session 变量。

编辑:看起来我的问题不是很明确。在我的组件的管理模式下单击“新建”按钮时,我需要一种发送参数/变量的方法。

【问题讨论】:

  • 你想问什么问题?
  • 对不起,如果我没有很好地解释。我的问题是如何在管理员模式下单击“新建”按钮时将“作者 ID”传递给编辑/创建新视图。

标签: joomla custom-component


【解决方案1】:

您可以在我回答的另一个问题上看到一个很好的教程:How to add a link category_id added to the admin (JToolBarHelper::addNew)? - Joomla 2.5

基本上,joomla 有两个功能,您可以在控制器中为该视图设置这些功能,以方便将项目添加到 url,即使它是作为加载、签出和保存过程的一部分的重定向。

【讨论】:

  • 非常感谢您的快速回答,我记得之前尝试过但无法正常工作。我已经按照你的步骤(我认为)。在列表表单中,我有一个名为“extension”的隐藏输入字段,它有一个默认值来尝试,然后是函数 getRedirectToItemAppend() 和 getRedirectToListAppend() ,如您的示例所示。当我想创建一个新项目时,我在 URL 中获得了 &extension,但变量 ($this->extension) 似乎为空。我错过了什么吗?
  • 要从 url 中获取值,您应该使用 JInput 类。更多信息在这里:docs.joomla.org/Retrieving_request_data_using_JInput
  • 你应该能够从中填充 $this->extension。
  • 我设法让它工作。感谢您的耐心等待大卫弗里奇。
【解决方案2】:

您可以使用Joomla Component Creator 中的“外键”或“类别字段”功能来构建它。它将为您节省很多麻烦。试一试。

【讨论】:

    猜你喜欢
    • 2013-03-01
    • 2011-02-14
    • 1970-01-01
    • 2016-06-02
    • 2017-12-29
    • 2013-04-03
    • 1970-01-01
    • 1970-01-01
    • 2012-09-23
    相关资源
    最近更新 更多