0

我正在构建一个包含一个组件、多个模块和一个插件的 Joomla 包。

我的问题是,相对于包根目录,我应该将 install.sql 和 uninstall.sql 文件放在哪里?现在它们在root/com_mypackage/administrator/sql/install.mysql.utf8.sql并且它们在组件的清单中定义为:

<install><!-- Runs on install -->
    <sql>
      <file driver="mysql" charset="utf8">sql/install.mysql.utf8.sql</file>
    </sql>
</install>

但是,这对我来说似乎不正确。我应该在标签administrator中的路径之前包含吗?<file>

当然,组件本身将被打包在自己的 .zip 中,以包含在 Package 的 XML 安装文件中。

4

1 回答 1

1

不,管理员标签中不需要这个标签。您在 manifest.xml 中缺少一些完整的文档尝试:-

http://docs.joomla.org/Developing_a_Model-View-Controller_Component/2.5/Adding_an_install-uninstall-update_script_file

http://docs.joomla.org/Components:xml_installfile

在我的最后 manifest.xml (我在 admin/install/install.mysql.utf8 中的 .sql):-

<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="2.5" method="upgrade">
    <name>Social</name>
    <license>Open Source License, GPL v2 based</license>
    <author>me</author>
    <authorEmail>developers@me.com</authorEmail>
    <authorUrl>http://www.me.com</authorUrl>
    <creationDate>2012-01-01</creationDate>
    <copyright>2013, me</copyright>
    <version>1.1</version>
    <description></description>

    <!-- Installation -->   

    <install>
        <sql>
            <file driver="mysql" charset="utf8">install/install.mysql.utf8.sql</file>
        </sql>
    </install>
    <installfile>install/install.php</installfile>
    <uninstall>
        <sql>
            <file driver="mysql" charset="utf8">install/uninstall.mysql.utf8.sql</file>
        </sql>
    </uninstall>
    <uninstallfile>install/uninstall.php</uninstallfile>

和其余的

于 2013-05-08T10:04:24.747 回答