小编csy*_*_io的帖子

在每个页面上插入折叠标记(wkhtmltopdf)

我正在使用wkhtmltopdf 0.12.2.1来创建发票等等.

我需要在pdf的每个页面上显示折叠标记.如果内容大于1,如何在每个页面上使用javascript重复它们?

这是我的基本标记

<!DOCTYPE html>
<html>
  <head>
    <title>PDF Title</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body id="pdf-page">
    <div class="marks">
      <div class="mark mark-top mark-left"></div>
      <div class="mark mark-top mark-right"></div>
      <div class="mark mark-middle mark-left"></div>
      <div class="mark mark-bottom mark-left"></div>
      <div class="mark mark-bottom mark-right"></div>
    </div>
    <div id="print-area">
      <div id="letter-head"></div>
      <div id="subject-line">Subject</div>
      <div id="document-content">
        ....
        ....
        ....
      </div>
    </div>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

它看起来基本上就像Image

javascript wkhtmltopdf

19
推荐指数
1
解决办法
1421
查看次数

使用 GridFieldDetailForm 修改字段时获取当前记录

首先,我使用的是 SilverStripe 3.2 RC1。

\n\n

如果您单击网格字段项,我需要修改它的显示字段。为了实现此目的,我正在修改“GridFieldDetailForm”字段,如下所示

\n\n
$bundleGridForm = $bundleGridConfig->getComponentByType(\'GridFieldDetailForm\');\n\n$detailFormFields = FieldList::create(\n  TabSet::create(\n    \'Root\',\n    Tab::create(\n      \'Haupt-Inhalt\',\n      CheckboxSetField::create(\n        \'ManyMany[AvailableVariations]\',\n        \'Verf\xc3\xbcgbare Variationen\',\n        $HELP-NEEDED-HERE->VariationItems()->map()->toArray()\n      )\n    )\n  )\n);\n\n$bundleGridForm->setFields($detailFormFields);\n
Run Code Online (Sandbox Code Playgroud)\n\n

正如您所看到的,我只想显示一个 CheckboxSetField 并且作为源,$HELP-NEEDED-HERE->VariationItems()->map()->toArray()我想使用当前选定/单击的项目的关系 (VariationItems)。

\n\n

问题是我不知道如何获得这种关系,因为 $this 当然引用了我的网格字段所在的类,而不是单击的项目。

\n\n

也许handleItem()函数是我所需要的,因为它返回GridFieldDetailForm_ItemRequest类,我可以在其中调用getRecord()函数。但所有这一切都假设我从网格字段中获取使用handleItem()函数的请求,并且我绝对不知道如何获取该记录。

\n\n

对于任何帮助,我将非常感激。

\n\n

此致

\n

silverstripe

2
推荐指数
1
解决办法
262
查看次数

在控制器扩展中提交表单 - SilverStripe 3.4.0

我正在尝试提交在控制器扩展中创建的表单.提交后,它会抛出一个错误

在此输入图像描述

可悲的是,我不知道为什么或如何解决这个问题,而不会失去验证中的构建等等.

我可以手动将表单操作更改为"doSectionForm",而不是我将收到表单数据但已丢失所有验证.

这是我的代码的摘录.

<?php
class SectionsPageControllerExtension extends DataExtension {

  private static $allowed_actions = [
    'SectionForm'
  ];

  public function SectionForm($id = null) {
      $fields = FieldList::create(
        HiddenField::create('SectionFormID')
          ->setValue($id)
      );

      $required = RequiredFields::create();
      $actions = FieldList::create(
        FormAction::create('doSectionForm', 'Absenden')
      );

      $form = Form::create($this->owner, 'SectionForm', $fields, $actions, $required);
      // $form->setFormAction($this->owner->Link() . 'doSectionForm');

      return $form;
    }
  }

    public function doSectionForm($data) {
      echo '<pre>';
      print_r($data);
    }
}
Run Code Online (Sandbox Code Playgroud)

silverstripe

2
推荐指数
1
解决办法
144
查看次数

标签 统计

silverstripe ×2

javascript ×1

wkhtmltopdf ×1