Gửi một mẫu để twig mẫu


9

Làm cách nào tôi có thể chuyển một biểu mẫu cho mẫu twig trong Drupal 8?

Ví dụ, tôi nhận được điều này:

một biểu mẫu: mymodule / src / Form / MyForm.php

Sau đó, trên Trình điều khiển của tôi:

public function myController() {

    ??????

    return [
        '#theme' => 'mytemplate',
        ??????
        ];
}

mytemplate.html.twig

{{ ????? }}

Bạn có nghĩa là bạn muốn đối tượng thực thể có sẵn trong tiền xử lý / mẫu hoặc bạn muốn chế độ xem được hiển thị của thực thể có sẵn?
Clive

@Clive Tôi muốn chế độ xem được hiển thị của thực thể có sẵn để gửi đến mẫu và sau đó điều này hiển thị nó.
rpayanm

1
Không có thứ gọi là "thực thể kết xuất". các nút và khối có API tương tự để được hiển thị, nhưng các biểu mẫu khá khác nhau và chắc chắn không phải là một thực thể. Đặt một câu hỏi cụ thể và bạn sẽ nhận được câu trả lời sẽ giúp bạn. loại thực thể nào, bạn chỉ muốn xem với đầu ra mặc định hoặc sử dụng nó trong mẫu của riêng bạn, ...
Berdir

Hãy để tôi sau đó chỉnh sửa câu hỏi.
rpayanm

Điều đó vẫn chưa đủ thông tin. Vì vậy, một lần nữa, loại thực thể nào bạn muốn đầu ra? Và mẫu của bạn đang làm chính xác là gì. Nói tóm lại, đầu vào và đầu ra dự kiến ​​của bạn là gì. Cũng bao gồm triển khai hook_theme () của bạn.
Berdir 5/2/2015

Câu trả lời:


14

Vâng, tôi đã làm nó, cho bất cứ ai cần điều này:

public function pageAction() {
  $myform = \Drupal::formBuilder()->getForm('Drupal\[mymodule]\Form\[myformclass]');
  // If you want modify the form:
  $myform['field']['#value'] = 'From my controller';

  $build = [
    '#theme' => 'mytemplate'
    '#form' => $myform,
  ];
}

Trong cành:

{{ form }}
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.