Symfony Demo
  • Главная страница
  • Поиск
  • Выбрать язык
    • Български bg
    • Català ca
    • Čeština cs
    • Deutsch de
    • English en
    • Español es
    • Français fr
    • Hrvatski hr
    • Indonesia id
    • Italiano it
    • 日本語 ja
    • Lietuvių lt
    • Nederlands nl
    • Polski pl
    • Português (brasil) pt
    • Română ro
    • Русский ru
    • Slovenščina sl
    • Türkçe tr
    • Українська uk
    • 中文(中国) zh

Это демо приложение создано на основе Symfony фреймворка для того, чтобы показать рекомендованный способ разработки Symfony приложений.

Для дополнительной информации обратитесь к Symfony документации.

Нажмите на эту кнопку для просмотра исходного кода Контроллера и шаблона, которые использовались для отображения этой страницы.

Исходный код, который использовался для отображения этой страницы

Код контроллераsrc/Controller/BlogController.php at line 145

/**
 * @Route("/search", methods="GET", name="blog_search")
 */
public function search(Request $request, PostRepository $posts): Response
{
    if (!$request->isXmlHttpRequest()) {
        return $this->render('blog/search.html.twig');
    }

    $query = $request->query->get('q', '');
    $limit = $request->query->get('l', 10);
    $foundPosts = $posts->findBySearchQuery($query, $limit);

    $results = [];
    foreach ($foundPosts as $post) {
        $results[] = [
            'title' => htmlspecialchars($post->getTitle(), ENT_COMPAT | ENT_HTML5),
            'date' => $post->getPublishedAt()->format('M d, Y'),
            'author' => htmlspecialchars($post->getAuthor()->getFullName(), ENT_COMPAT | ENT_HTML5),
            'summary' => htmlspecialchars($post->getSummary(), ENT_COMPAT | ENT_HTML5),
            'url' => $this->generateUrl('blog_post', ['slug' => $post->getSlug()]),
        ];
    }

    return $this->json($results);
}

Код шаблона Twigtemplates/blog/search.html.twig at line 1

{% extends 'base.html.twig' %}

{% block javascripts %}
    {{ parent() }}
    {{ encore_entry_script_tags('search') }}
{% endblock %}

{% block body_id 'blog_search' %}

{% block main %}
    <form action="{{ path('blog_search') }}" method="get">
        <div class="form-group">
            <input name="q"
                   class="form-control search-field"
                   placeholder="{{ 'post.search_for'|trans }}"
                   autocomplete="off"
                   autofocus
                   data-no-results-message="{{ 'post.search_no_results'|trans }}"
            >
        </div>
    </form>

    <div id="results">
    </div>
{% endblock %}

{% block sidebar %}
    {{ parent() }}

    {{ show_source_code(_self) }}
{% endblock %}

© 2025 - The Symfony Project

MIT Лицензия