如何使用PHP slim在twig中使用数据库呈现数据

时间:2017-10-29 19:27:23

标签: php slim

我试图将数据库中的数据渲染到控制器内的树枝上。 Sorta就像一个mvc结构,但没有模型。

现在它只是呈现

我的待办事项

我很惊讶slim documentation没有包含此类说明

任何建议,提前谢谢。

TodosController.php

<?php


namespace App\Controllers;

use Slim\Http\Request;
use Slim\Http\Response;

class TodosController extends BaseController
{
    public function index($request, $response)
    {

    }


    public function getTodos($request, $response, $args)
    {
        $sth = $this->db->prepare("SELECT * FROM tasks ORDER BY task");
        $sth->execute();
        $todos = $sth->fetchAll();

        return $this->c->view->render($response, 'todos.twig', $todos);




    }
}

todos.twig

{% extends "templates/layout.html" %}

{% block content %}
<h1>My Todos</h1>

<ul>
  {% for task in todos %}
        <li><span>{{ task.id}}</span> {{ task.task}}</li>
    {% endfor %}

</ul>
{% endblock %}

1 个答案:

答案 0 :(得分:1)

您需要将todos放入数组

$this->c->view->render($response, 'todos.twig', ['todos' => $todos]);