Orchard CMS - навигация больше не работает - PullRequest
3 голосов
/ 14 мая 2011

Я новичок в системе Orchard CMS.http://www.orchardproject.net

Я установил версию 1.0, и теперь они обновились, и я установил версию 1.1.30, но никогда ничего не публиковал.

Я скачал Навигационную функцию "Расширенное меню - Версия: 1.2.1" и увидел некоторые пункты меню, которые можно использовать, и кое-что попробовал.Но Я больше не могу их удалять .

Если я отключаю и включаю, я получаю сообщение об ошибке:

    In einen eindeutigen Index kann kein doppelter Wert eingefügt werden. 
[ Table name = Szmyd_Orchard_Modules_Menu_AdvancedMenuPartRecord,Constraint 
name = UQ__Szmyd_Orchard_Modules_Menu_AdvancedMenuPartRecord__0000000000000352 ]

Но я вижу меню навигации с расширенными подпунктами.

Я не знаю, откуда в меню берется его информация, но некоторые элементы, такие как «Sprecher», находятся в «Расширенном меню навигации», но когда я нажимаю удалить ошибку, происходит:

404 - Datei oder Verzeichnis wurde nicht gefunden.

Iпробовал несколько дней для любого решения без успеха.Пожалуйста, помогите.

1 Ответ

2 голосов
/ 25 мая 2011

Мне удалось выяснить источники проблем, и они будут исправлены в следующем выпуске. Я постараюсь сделать это к концу этой недели.

Первый выпуск

Не беспокойтесь об ошибке, с которой вы столкнулись после отключения и включения модуля - это один раз и не влияет на использование модуля (но будет исправлено, конечно).

Отключение модуля не приводит к удалению каких-либо базовых таблиц базы данных - это просто говорит платформе не использовать код модуля. Меню по умолчанию создается на этапе включения и остается там, даже если вы отключите модуль. К сожалению, он не проверяет, было ли уже создано меню, поэтому каждый раз, когда вы включаете модуль, он кричит о «попытке вставить дубликат в уникальный индекс» (имя меню уникально).

Второй выпуск

Вы можете применить это исправление, чтобы разрешить удаление меню. Перейдите в [Root] /Modules/Szmyd.Orchard.Modules.Menu/Views/MenuAdmin/Index.cshtml и замените

@Html.ActionLink(T("Delete menu").Text, "Delete", "MenuAdmin", new { Area = "Szmyd.Orchard.Modules.Menu" }, new { @class = "button primaryAction" })

с:

<a href="@Html.AntiForgeryTokenGetUrl(Url.Action("Delete", new { menuName = Model.MenuName }))" class="button primaryAction">@T("Delete menu") </a>

Это приведет к корректному удалению ссылок.

UPDATE

Я забыл добавить, что некоторые люди сообщали, что операция Удалить не будет работать с меню 'main' . Я исследовал проблему и нашел источник (и) проблемы.

First

Проблема с главным меню заключается в том, что ссылка «Главное меню» в панели администратора всегда есть, независимо от того, удаляете ли вы меню или нет . Эта ссылка добавляется старой стандартной навигационной системой Orchard по умолчанию, но URL, куда она ведет, перезаписывается модулем расширенного меню.

Второй

После удаления меню соответствующие пункты меню не удаляются. Элементы связаны с соответствующим меню его именем, поэтому, если вы удалите «главное» меню, все элементы, связанные с «основным», останутся там, после того, как само меню было удалено. Поэтому после нажатия «Главное меню» вы внезапно видите все пункты меню, как будто ничего не произошло. Но нажатие «Удалить меню» приведет к ошибке 404, поскольку само меню не существует.

Я решу все эти проблемы как можно скорее и опубликую исправление.

...