Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как сделать такое может кто сталкивался? / 25 сообщений из 142, страница 1 из 6
19.12.2015, 08:58
    #39132269
rpe4a
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
Пишем с коллегой сайт, платформа ASP.NET MVC 4. Есть 2 кабинета(Админка и Пользователь), и тот и другой пользуется местами одними и теми же Views, только у пользователя с правами Админ, функционал жирнее.
Проверка тоже происходит во View(если Админ, то открываем ему дополнительные кнопочки и т. д.). Проблема в том, что Админ тоже является пользователем, соответственно, у него есть своей кабинет Пользователя + доступ в Админский кабинет. Если мы заходим Админом в кабинет пользователя, то к сожалению проверки на Админа приводят к тому что подставляются Views из Админского кабинета, а не из кабинета Пользователя. Собственно вопрос, как сделать так, чтобы когда админ заходил в кабинет Пользователя ему подставлялись Views - кабинета Пользователя? Может быть мы изначально выбрали не правильный путь? Хотелось бы услышать версии как вы решаете данного рода проблемы?
Наши версии как это сделать:
Попытаться настроить Routs(но это теория, пока не пробовали)

Передавать в метод контроллера дополнительный параметр, на основе которого будет проводится дополнительная проверка( Например IsAdminCabinet = true)

Забить на это и просто убрать у Админа кабинет Пользователя(очень не хотелось бы, потому что придется дублировать 30% функционала в Админку из кабинета Пользователя)
...
Рейтинг: 0 / 0
19.12.2015, 09:14
    #39132271
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
rpe4a,авторПроблема в том, что Админ тоже является пользователем
Зачем ? у админа роль админ, у пользователя роль пользователь, админ расширяет пермиссионс пользователя равно как и его кабинет
по контролам, вот и исходите из этой концепции..
...
Рейтинг: 0 / 0
19.12.2015, 09:52
    #39132273
rpe4a
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
Где-то в степи, спасибо, но мы хотим, чтобы у нас было 2 разных кабинета и Админ должен иметь доступ к обоим. Просто, если он заходит в кабинет Пользователя, то ему рендерился функционал пользователя. Т. к. он как пользователь может писать новости, оставлять сообщения, создавать блог. Соответственно просматривать свои сообщения и созданные им новости. Но т.к. в данный момент он является Админом, то ему выплевываются Views со всеми сообщениями и всем новостями, а нам надо чтобы выплевывалась Views только с его сообщениями и новостями, если он зашел в свой кабинет.
...
Рейтинг: 0 / 0
20.12.2015, 07:57
    #39132488
Calabonga
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
rpe4a,


Делается немного по-другому. Создаете views для администратора и пользователя. Но у администратора должен быть набор разрешений: Администратор, пользователь. Тогда при входе на панель администратора у него будет один контент, а при входе на панель пользователя - другой!
...
Рейтинг: 0 / 0
21.12.2015, 08:08
    #39132741
rpe4a
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
Calabonga, неохото, разбивать на 2 разные Views, потому что хочется избежать дублирования. Разница во Views минимальная, добавляется пару кнопок из под админа, так что смысла разбивать нету.

Пришли к выводу, что лучше попробуем на Routes, если не понравится, то есть еще вариант с 2-умя разными Actions которые ссылаются на 1 View. Соответственно, если это Action админа, то будем прокидывать через View.Bag дополнительный маячок.
...
Рейтинг: 0 / 0
21.12.2015, 11:50
    #39132921
Zoria
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
я может чего-то не понимаю, или вы не дорассказали,
раз у вас есть различие в понятии кабинет пользователя и кабинет админа, то проверять не просто на "ИзАдмин" и включать дополнительные кнопки, а проверять "ИзАдмин" и "ИзКабинетАдмина"? :)
...
Рейтинг: 0 / 0
21.12.2015, 12:19
    #39132954
rpe4a
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
Zoria, все верно.
...
Рейтинг: 0 / 0
21.12.2015, 12:22
    #39132958
Фёдор К
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
rpe4a,

По-моему у вас недопонимание концепции:
1. Должна быть аутентификация с ролями
2. Роли пользователю назначаются как коллекция: никакой, одна или несколько.
3. В зависимости от текущей роли рисуем интерфейс или мягко посылаем (при отсутствии ролей)

Неважно как вы рисуете интерфейс - отдельные это вьюхи или одна со скрытием элементов.

Если вы только начинаете изучать MVC - попробуйте поработать с Nancy FX .
Очень интересная технология, похожая на MVC, но с более низким порогом вхождения и своими прелестями. Работает с Razor . Для 2013 студии есть набор готовых шаблонов (может и для 15 появились).

Для начальных и средних проектов - самое то. Там, кстати, реализована фича с ролями - так называемыми claims . Назначаются или на уровне роутинга или на уровне модуля (обработчика).

Надумаете, чем могу - помогу.
...
Рейтинг: 0 / 0
21.12.2015, 13:55
    #39133105
rpe4a
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
Фёдор К, постараюсь ответить на ваши пункты:
1) аутентификация есть (используем Asp.NET Identity 2.0, тут же есть так называемые Claims)
2) пока роли 2: Админ и Пользователь
3) все правильно, если пользователь не авторизовался он вообще никак не попадет с свой кабинет

Фёдор КНеважно как вы рисуете интерфейс - отдельные это вьюхи или одна со скрытием элементов.
Как раз для нас это имеет значение. Просто нету смысла разбивать на 2, так как добавляется пару кнопок. Но эта вьюха должна отрисовываться по разному не только от значений Роли пользователя, а еще и от того в каком месте сейчас находится пользователь, если это "Кабинет пользователя" - то и вьюха должна не иметь функционала Админа, даже если этот пользователь с ролью Админ. Потому что в "Кабинете администратора" есть куча функционала, и есть так называемый "Мой профиль", который как раз и ссылается на "Кабинет пользователя".

Кстати посоветовали еще 1 решение создать 2 action и из них вызывать эту нашу вьюху.
...
Рейтинг: 0 / 0
21.12.2015, 16:27
    #39133412
st_st
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
А как админ получает View админа в личном кабинете пользователя? Он же в личный кабинет пошёл http://site.com/profile/ а не в администраторскую http://site.com/admin/ У каждого свои независимые друг от друга url/контроллеры/views. Менеджер может в личном кабинете на правах простого пользователя добавить статью, затем пойти к себе в /admin/articles/ и отмодерировать её там. Модераторская и личный кабинет обычно отличаются почти всем.
...
Рейтинг: 0 / 0
21.12.2015, 17:31
    #39133559
Фёдор К
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
rpe4aФёдор К, постараюсь ответить на ваши пункты:
1) аутентификация есть (используем Asp.NET Identity 2.0, тут же есть так называемые Claims)
2) пока роли 2: Админ и Пользователь
3) все правильно, если пользователь не авторизовался он вообще никак не попадет с свой кабинет

Фёдор КНеважно как вы рисуете интерфейс - отдельные это вьюхи или одна со скрытием элементов.
Как раз для нас это имеет значение. Просто нету смысла разбивать на 2, так как добавляется пару кнопок. Но эта вьюха должна отрисовываться по разному не только от значений Роли пользователя, а еще и от того в каком месте сейчас находится пользователь, если это "Кабинет пользователя" - то и вьюха должна не иметь функционала Админа, даже если этот пользователь с ролью Админ. Потому что в "Кабинете администратора" есть куча функционала, и есть так называемый "Мой профиль", который как раз и ссылается на "Кабинет пользователя".

Кстати посоветовали еще 1 решение создать 2 action и из них вызывать эту нашу вьюху. Вы, похоже, не понимаете концепцию: если кто-то имеет роли Админа и Пользователя, то зайдя как пользователь он имеет UI и функционал Пользователя. Ни больше ни меньше.

То, что вы описываете - это концепция персональных UI с параметрами (ролями). И роли, получается, тут чисто номинальны. Это не очень прозрачная концепция.
...
Рейтинг: 0 / 0
22.12.2015, 09:35
    #39134140
rpe4a
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
st_stА как админ получает View админа в личном кабинете пользователя? Он же в личный кабинет пошёл http://site.com/profile/ а не в администраторскую http://site.com/admin/ У каждого свои независимые друг от друга url/контроллеры/views. Менеджер может в личном кабинете на правах простого пользователя добавить статью, затем пойти к себе в /admin/articles/ и отмодерировать её там. Модераторская и личный кабинет обычно отличаются почти всем.

http://site.com/profile/ - имеет еще ссылку на http://site.com/profile/news, а как раз на это View разные UI, для пользователя и админа, по этому и охота не делить это все на 2 Views, а как-то сделать на 1, но чтобы если это кабинет пользователя то UI пользователя, если кабинет админа, то UI админа.
...
Рейтинг: 0 / 0
22.12.2015, 09:40
    #39134144
rpe4a
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
Фёдор КВы, похоже, не понимаете концепцию: если кто-то имеет роли Админа и Пользователя, то зайдя как пользователь он имеет UI и функционал Пользователя.
Хм. А как тогда нам быть? Ведь у нас есть Админ, который тоже является пользователем. Как вы предлагает решить нам эту проблему?
...
Рейтинг: 0 / 0
22.12.2015, 10:02
    #39134161
ViPRos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
rpe4a,
...
Рейтинг: 0 / 0
22.12.2015, 12:03
    #39134307
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
ViPRosrpe4a,картинка чужая, буквы в intergrated security обрезаны.

ну фу.
...
Рейтинг: 0 / 0
22.12.2015, 12:05
    #39134310
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
за шесть лет могли бы и логотип нормальный нарисовать и прочую графику.
...
Рейтинг: 0 / 0
22.12.2015, 12:23
    #39134351
ViPRos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
Antonariy,

нахуа - за это не платят
...
Рейтинг: 0 / 0
22.12.2015, 12:27
    #39134359
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
ViPRosAntonariy,

нахуа - за это не платят
Даже, если для внутреннего пользования эта софтина, то все равно можно было поаккуратнее сделать.
...
Рейтинг: 0 / 0
22.12.2015, 12:30
    #39134363
ViPRos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
Axeleron,

ну критики вы воще
у нас есть какие то тестеры, как только скажут что пора этот ебаут поменять на норм логин - поменяю
а то блин сидят токо зп получают
...
Рейтинг: 0 / 0
22.12.2015, 12:31
    #39134367
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
ViPRosAntonariy,

нахуа - за это не платятнахуа нам имидж - за него не платят.

стив джобс посмеялся бы над вами, если бы не умер.

1) по одежке встречают, по уму провожают
2) неряшливо снаружи, неряшливо внутри.
3) no profit
...
Рейтинг: 0 / 0
22.12.2015, 12:40
    #39134378
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
ViPRosу нас есть какие то тестеры, как только скажут что пора этот ебаут поменять на норм логин - поменяюто есть по-твоему за красоту внешнего вида должны отвечать тестеры?

нет, с таким подходом импортозамещения в области разработки ПО нам не видать как своих ушей.
...
Рейтинг: 0 / 0
22.12.2015, 13:01
    #39134418
Фёдор К
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
rpe4aФёдор КВы, похоже, не понимаете концепцию: если кто-то имеет роли Админа и Пользователя, то зайдя как пользователь он имеет UI и функционал Пользователя.
Хм. А как тогда нам быть? Ведь у нас есть Админ, который тоже является пользователем. Как вы предлагает решить нам эту проблему?- Я не понимаю в чем сложность. При запросе в зависимости от текущей роли рисуем вью: пользователю - базовую, админу - добавляем кнопки.

rpe4a http://site.com/profile/ - имеет еще ссылку на http://site.com/profile/news, а как раз на это View разные UI, для пользователя и админа, по этому и охота не делить это все на 2 Views, а как-то сделать на 1, но чтобы если это кабинет пользователя то UI пользователя, если кабинет админа, то UI админа. В данном случае в запросе проверяем текущую роль и - как описано выше.

Но я бы предпочел http://site.com/ user /news и http://site.com/ admin /news.
Так прозрачней.
...
Рейтинг: 0 / 0
22.12.2015, 13:14
    #39134437
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
Antonariyнахуа нам имидж - за него не платят.

стив джобс посмеялся бы над вами, если бы не умер.

1) по одежке встречают, по уму провожают
2) неряшливо снаружи, неряшливо внутри.
3) no profit

поддерживаю.
к вопросу, надо ли ждать пиздюлину, прежде чем начать делать хорошо или хотя бы нормально?
...
Рейтинг: 0 / 0
22.12.2015, 13:32
    #39134474
ViPRos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
AntonariyViPRosу нас есть какие то тестеры, как только скажут что пора этот ебаут поменять на норм логин - поменяюто есть по-твоему за красоту внешнего вида должны отвечать тестеры?

нет, с таким подходом импортозамещения в области разработки ПО нам не видать как своих ушей.
как минимум они должны видеть что что то там обрезано ( у меня со зрением не особо)
а дизайнеры должны рисовать и дть картинку (я плохо рисую)
...
Рейтинг: 0 / 0
22.12.2015, 13:34
    #39134479
ViPRos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать такое может кто сталкивался?
hVostt,
платить надо нормально и не жидиться на дизайнерах (когда то говорили что Лебедеву закажут, как токо будет прототип - давно забыли) и тестерах
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как сделать такое может кто сталкивался? / 25 сообщений из 142, страница 1 из 6
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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