Silverstripe 4 - Как включить FullTextSearchable и $ SearchForm? - PullRequest
1 голос
/ 10 октября 2019

Обновление сайта с 3 до 4. Существующий код использует FullTextSearchable согласно этому руководству , которое существует для 3, но не для 4. Google приводит только к неотвеченным вопросам такого же характера. За исключением этого , который не помогает. Но я нахожу это руководство для SS4, которое на самом деле не ориентировано на ту же тему, но несколько полезно.

Вот мой код:

_config.php

\SilverStripe\ORM\Search\FulltextSearchable::enable();

Page.php

use SilverStripe\ORM\Connect\MySQLSchemaManager;

private static $create_table_options = [
    MySQLSchemaManager::ID => 'ENGINE=MyISAM'
];

Page.ss

$SearchForm

Ожидается: отображается стандартная форма поиска

Фактически: ничего не отображается

Я дошёл до того, что жестко запрограммировал форму из существующего сайта в шаблон, чтобы посмотреть, работает ли сама функция поиска:

Page.ss

<form id="SearchForm_SearchForm" action="/home/SearchForm" method="get" enctype="application/x-www-form-urlencoded">
    <p id="SearchForm_SearchForm_error" class="message " style="display: none"></p>
    <fieldset>
        <input type="text" name="Search" value="Search" class="text nolabel" id="SearchForm_SearchForm_Search">
        <div class="form-group">
            <input type="submit" name="action_results" value="Go" class="action" id="SearchForm_SearchForm_action_results">
        </div>
    </fieldset>
</form>

Ожидаемый: отображается страница результатов поиска с соответствующими результатами поиска для введенного термина

Факт: страница 404 не найдена

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...