Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Несколько уровней компоновок - всем нужны разные модели. Как быть? / 25 сообщений из 28, страница 1 из 2
12.05.2014, 13:39
    #38638701
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Всем привет.
В моем приложении статичен только самый верхний уровень (и то не навсегда).
Все остальные вложенные уровни - зависят от предыдущего выбора.

И каждому уровню нужна своя модель. И как быть, если я во вью указываю файл компоновки, которому нужна особая модель?

Грубо:

Самый верх:
Справочники.
Документы.

Второй уровень. (Вычисление в контроллере - Модель ААА)
Виды документов:
Акты.
Приемы на работу.

Третий уровень: (Модель: ВидДокумента)
Перечень документов.

Так вот - отображая третий уровень - мне нужно отобразить еще и второй. А он требует модель ААА. Всё валится с ошибкой.
А я ведь даже не захожу в контроллер второго уровня - как мне "модель ААА" вычислить то?

Или многоуровневые компоновки - зло?
...
Рейтинг: 0 / 0
12.05.2014, 13:45
    #38638707
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Можно в принципе свести всё к одной модели (мегаструктура всех данных); совать её по всем вьюхам и логику отображения заложить во вьюхи, но... Это как-то неправильно?
...
Рейтинг: 0 / 0
12.05.2014, 15:18
    #38638864
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
В общем вопрос свёлся к классическому - хранение состояний.

Вариантов, я так понимаю, три:
1. Сессии.
2. Параметры запросов.
3. БД.

И всё это бегает через actions контроллеров и густо "приправлено" modelBinder-ом.

И забыть про вложенность компоновок. Ибо ересь.
...
Рейтинг: 0 / 0
12.05.2014, 15:20
    #38638866
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Забыл 4-ый.

4. Логика во вьюхах и один глобальный объект для всех.
...
Рейтинг: 0 / 0
12.05.2014, 19:53
    #38639152
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Не, а чо так не бойко? Реально картинка не складывается.

Кусок разметки может быть "показан" разными путями. Через меню, через "недавно использовалось", через залинкованные справочники..

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

Делать сайты с одним уровнем меню это конечно круто, но в реальной-то жизни и визитку не запихнешь в такие рамки.

Народ, как вы строите сложные приложения, что за приемы?
...
Рейтинг: 0 / 0
12.05.2014, 20:35
    #38639185
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Monochromatique,

по-русски можешь проблему изложить?
...
Рейтинг: 0 / 0
12.05.2014, 21:05
    #38639201
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Изопропил,

Я подходов не понимаю.

Вклинимся в середину пайплайна.
Мне нужно отобразить документ. Который я выбрал из списка.

В контроллер приходит id документа. Я могу найти документ и отрендерить его.

Но.

Мне нужно отрендерить и остальную часть интерфейса. Меню\шменю\всё на свете.
Если бы меню\шменю было было бы статичным, то вопросов, положим не было бы.

А если оно похоже на павлиний хвост - пока юзер тыркался по интерфейсу? А у меня на входе только ID документа.

И что делать?
...
Рейтинг: 0 / 0
13.05.2014, 06:33
    #38639349
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
По другому.
Есть разметка документа "поступление на склад". Чтобы показать ее еа экране - мы должны выбрать последовательно из ряда меню:
1. Документы.
2. Складские.
3. Поступления.
4. Контрагент.
5. Сам документ.

При навигации по меню - каждый раз рендеря страницу надо минимум указывать что было выбрано, а максимум - давать возможность вернуться в конкретное меню. То есть, при выборе контрагента - надо подсвечивать "Документы/складские/поступления". Нужно иметь эту информацию.

Таким образом, когда мы доберемся до документа - мы пройдем через несколько меню, которые должны быть как-то визуализированы.

Также в приложении должна быть боковая панель - в ней будут отображены недавно используемые объекты. Там будет и наш документ при клике на который - на него можно будет посмотреть. Но на этот раз без меню, а что-то типа recent/приходный ордер #123.

Но разметке-то документа индеферентно кто её вызвал (должно быть так).

Вопрос: каким образом рендерить все эти проходные меню, когда каждая из требует свой параметр?? Меню с контрагентом требует id контрагента, меню выбора типа - тип документа. А когда я добираюсь до самого документа - у меня по сути - только его ID.

Как вариант - в ссылку выбора документа можно напихать все необходимые параметры; и тип, и контрагента, и черта в ступе - только потому, что это может понадобиться контроллерам, рендерящим меню, но... Это же просто извращение.
...
Рейтинг: 0 / 0
13.05.2014, 08:53
    #38639380
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Monochromatique,
Вообще то отделить мух от котлет.
Меню - это меню, оно ни как не завязано с сервером ( ну разве что на сервере формируетстся) и с ссылок меню скриптом
заносится в срытое поле выбранный путь типа ('item1/item2/intem3/id34'), управление состояния меню происходит куками
это стандартная практика, об этом не мало песен спето, и примеров таких меню - просто уйма..
ТО что вы пытаетесь разговаривать о какой то панели, (подозреваю что это - хлебные крошки) она формируется на сервере
в результате выбранного итема меню ( читать по значению скрытого поля выбора меню), тут то какие могут быть проблемы
с формированием оной?, ну а остальное проза жизни.....
Вообще то, то что вы написали ( манера описания задачи) это бредово, я почему ответил - увидел процентов 5 рациональности
а остальное - бред..
...
Рейтинг: 0 / 0
13.05.2014, 09:23
    #38639405
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
...
Рейтинг: 0 / 0
13.05.2014, 10:50
    #38639502
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Где-то в степи,

"- Довольно обидные ваши слова. Очень обидные."
...
Рейтинг: 0 / 0
13.05.2014, 11:27
    #38639539
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Не поленитесь - посмотрите картинки.
Это пример интерфейса, о котором я говорю.

Само меню - находится слева и вызывает при клике... То, что должно вызвать.
Далее, кликая по предлагаемым вариантам - я иду по сценарию.
И самое главное - я могу в любой момент вернуться в любое место уже пройденного сценария, я показал это на 7-ом снимке.

То есть, когда я выбираю сотрудника, у меня:
1. Есть визуальная инфо - откуда я двигаюсь - в каком процессе нахожусь.
2. Могу вернуться обратно.

Своего рода визард.








...
Рейтинг: 0 / 0
13.05.2014, 11:33
    #38639547
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
И мне кажется, я понял, что мне надо делать...
Мне нужно иметь всю стек вызов как объект и рендерить именно его.

То есть - в контроллере я получаю параметры запроса, беру этот свой "визард" и уже определяю - что с ним делать.
Начинать заново, продолжать с последнего места - возвращаться назад по сценарию.. Модицифицирую его и передаю его во вью.

Да, я думаю, что это будет оптимально.
...
Рейтинг: 0 / 0
13.05.2014, 13:00
    #38639683
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Monochromatique,авторСамо меню - находится слева и вызывает при клике... То, что должно вызвать.
Далее, кликая по предлагаемым вариантам - я иду по сценарию.
Вы это, попробуйте выразить мысль танцем, под ритмичные удары бубна, а тут зассыльте с ютуба.
Как бы многие племена практикуют это, но там, к сожалению, отображают в основном охоту и рыбалку.
А вот так, не по детский, работу с многоуровневым меню.... очень бы хотелось посмотреть..
...
Рейтинг: 0 / 0
13.05.2014, 13:32
    #38639736
Boneshock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
какой то млять монолог ни о чем

...
Рейтинг: 0 / 0
13.05.2014, 14:51
    #38639850
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Меню, хлебные крошки, визард, - всё смешалось в кучу. Где нормальные скрины, которые видно?
...
Рейтинг: 0 / 0
13.05.2014, 15:01
    #38639859
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Что-то типа этого?
...
Рейтинг: 0 / 0
13.05.2014, 15:30
    #38639897
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
skyANAМеню, хлебные крошки, визард, - всё смешалось в кучу. Где нормальные скрины, которые видно?

Да как-то так вставилось..
...
Рейтинг: 0 / 0
13.05.2014, 15:34
    #38639905
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
skyANA,

-- Что типа этого...

Ну можно и так сказать.. за небольшим исключением.

Когда я делаю "тынц" на документе - как мне вычислить "хлебные крошки", если учесть, что их невозможно построить имея только документ?

Просто в вашем примере - все хлебные крошки можно "вычислить". Да и то не факт.
...
Рейтинг: 0 / 0
13.05.2014, 16:45
    #38640007
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Документы->Складские->Контрагент->Все документы по контрагенту -> Документ.

Это конечно супер, а если:

Контрагент -> Договор -> Просроченная оплата -> Документ ???

Или:

Номенклатура -> Возвраты за месяц -> Документ ???

На десктопе вопросов бы не было, знай команды создавай, но что делать в вебе, когда надо при каждом запросе всю страницу воссоздавать?

Я посмотрел в 1С - она этим не парится. Очень неудобно кстати.
Меню с подсистемами + меню самой подсистемы + окно контента и хорош.
Подсвечивается только выбранная подсистема - и всё.
...
Рейтинг: 0 / 0
13.05.2014, 16:54
    #38640019
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Monochromatique, дизайн-то покажите?

Пока я вижу две модели: DocumentModel и MenuModel. И два контроллера: DocumentController и MenuController.
...
Рейтинг: 0 / 0
13.05.2014, 17:03
    #38640036
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Всё что есть - это скрины с десктопа, которые я привел выше. Дизайна для веба - никакого пока нет.

Я подумал - наверное я многого хочу - пилить приложения a la десктоп на чистом HTML (без JS).

У MVC всё просто - запрос-ответ. И не выделываться.

А если надо круто - добро пожаловать в ад SPA.
...
Рейтинг: 0 / 0
13.05.2014, 17:11
    #38640053
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
MonochromatiqueВсё что есть - это скрины с десктопа, которые я привел выше.Я просил скрины, которые видно . Что означает, что их тупо не видно.
...
Рейтинг: 0 / 0
13.05.2014, 17:14
    #38640060
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
Я прошу пардону, но они открываются, если открыть их в другой вкладке. Их там всего семь штук.

Сохранив в папку их можно задорно листать. Они там под номерами.
...
Рейтинг: 0 / 0
13.05.2014, 17:15
    #38640061
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько уровней компоновок - всем нужны разные модели. Как быть?
MonochromatiqueЯ подумал - наверное я многого хочу - пилить приложения a la десктоп на чистом HTML (без JS).Почему многого? Пишите толстый клиент на JS, сервер пусть отдаёт тупо JSON.
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Несколько уровней компоновок - всем нужны разные модели. Как быть? / 25 сообщений из 28, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]