2017-11-07 6 views
0

私はSpring MVC 4を使用してWebサイトを開発し始めています。私は自分のウェブサイトにトップナビゲーションを持たせたいと思います。ユーザーがトップ・ナビゲーション上を移動すると、アクセスしているページのリストが表示されます。Spring MVC 4サイト内のナビゲーション

Spring MVC 4のベストプラクティスでこれを達成するにはどうすればよいですか?

は、次のことを想像し、私の例を説明するために:

<ul id='menu-nav'> 
<li><a href='homeURL'>Home</a></li> 
<li><a href='page1URL'>Page 1</a></li> 
<li><a href='page2URL'>Page 2</a></li> 
</ul> 

上記は私の非常に限られたウェブサイト内のすべてのページの一覧です。各ユーザーがログインすると、アクセスできるページへのリンクのみを表示できるようにします。

例として、ADMIN権限でログインしているユーザーは、すべてのリンクを表示します。しかし、ADMIN権限を持たないユーザーには、ホームページとページ1へのリンクしか表示されません。

これを実装する方法を提案する人はいますか?

答えて

0

私は、これは動作するはずだと思う:

<ul id='menu-nav'> 
    <li><a href='homeURL'>Home</a></li> 
    <li><a href='page1URL'>Page 1</a></li> 
    <!-- For many roles --> 
    <!-- <security:authorize access="hasAnyRole('ADMIN', 'USER')"> --> 
    <!-- For one role --> 
    <security:authorize access="hasRole('ADMIN')"> 
     <li><a href='page2URL'>Page 2</a></li> 
    </security:authorize> 
</ul> 

チェックこの回答:https://stackoverflow.com/a/11469342/8800147

+0

こんにちはブライス、私に戻って取得するためのおかげで。私はあなたのソリューションが静的なhtmlのためにどのように機能するかを見ることができます。しかし、ループを使ってリストを生成した場合(モデルのページに渡されたリストデータ)、これが機能しますか?そして、複数のグループをどのように扱うのですか? – user2318704

+0

こんにちは、私は答えを編集して、どのように多くの役割があるのか​​を確認することができます。 ** hasAnyRole **を使用します。私はテンプレートの条件文についてはわかりません(おそらくこれはhttps://stackoverflow.com/questions/10815464/render-html-conditionally-in-spring-mvcに役立ちます)が、それ以外の場合は動的にリストを作成できます管理ユーザーの場合は1人、他のユーザーの場合はもう1人です。 –

+0

ありがとうございます。管理者用のリストと他のユーザー用のリストを動的に作成するというアイデアがあります。私はそれが役立つと思う...私はログインしたユーザーに基づいてリストを作成する方法について考えてみるかもしれない。 jspはそれが与えられたものを表示するだけです。 – user2318704

関連する問題