wabisoft/spreadsheetobject

CSV、XLS 和 XLSX 文件转换为 Twig 中使用的代码。

1.0.1 2023-06-23 19:48 UTC

This package is auto-updated.

Last update: 2024-09-22 16:23:46 UTC


README

{% set table = spreadsheetobject(asset) %}

这返回一个项目数组

  • 标题
  • 列数
{% if table %}
    Name of imported sheet: {{ table.title }}
    Total Columns: {{ table.columnCount }}
    <table>
        {% for row in table.rows %}
            <tr>
                {% for column in row %}
                    <td>{{ column }}</td>
                {% endfor %}
            </tr>
        {% endfor %}
    </table>
{% endif %}

选项

支持

  • sheet - 要导入的表格的整数。默认为 1;
  • removeRow - 要删除的行的整数。默认为 false
  • removeColumn - 要删除的列的字母值。默认为 false
  • removeColumnByIndex - 要删除的列的索引值,从 1 开始。默认为 false

示例

{% set table = asset | spreadsheetobject({
    'removeRow': 1,
    'removeColumnByIndex': 1
}) %} %}

配置选项

如果表格结果应存储在数据库中以供后续读取。

 'storeInDb' => true

命令

插件将监视已删除和更新的资产,但如果您想刷新所有记录

craft spreadsheet-object/flush/all

辅助宏

_table-helper 处公开辅助宏,它与表格、行和单元格兼容。

简单的表格示例

{% import '_table-helper' as tableHelper %}
{% set table = asset | spreadsheetobject %}

{{ tableHelper.table(table) }}

完整示例

{% import '_table-helper' as tableHelper %}
{% set table = asset | spreadsheetobject %}

{{ tableHelper.table(table, {
    thead: false,
    tfoot: false,
    classes: {
        table: false,
        tr: false,
        td: false,
        th: false,
        thead: false,
        tfoot: false,
        first: {
            tr: false,
            td: false,
            th: false,
        },
        last: {
            tr: false,
            td: false,
            th: false
        }
    }
}) }}

见:模板代码

仅行示例

{% import '_table-helper' as tableHelper %}
{% set table = asset | spreadsheetobject %}

<table>
{% for row in table.rows %}
    <thead>
        <tr>
            <th>Name</th>
            <th>Email</th>
            <th>Phone</th>
        </tr>
    </thead>
    {{ tableHelper.tr(row) }}
{% endfor %}
</table>

行辅助接受与完整表格相同的选项对象

见:模板代码