ユーザーが2つの方法(サムネイルとリストなど)で地図を閲覧できるアプリケーションがあります
/map/browse
/map/list
ここで、これらのビューを特定のユーザーの地図のみを表示するように制限したいと思います。
/user/3/browse
/user/3/list
そこで、マッピングを作成しました。
"/user/$userId/browse" {
controller = "map"
action = "browse"
}
"/user/$userId/list" {
controller = "map"
action = "list"
}
これで、に移動でき/user/3/browse
ますが、ページ付けリンクをクリックするか、ページ付けフィルターを変更すると、URLはに戻ります/map/browse
。
また、コントローラーでをに設定すると、次のエラーが発生しますuserId
。null
エラー500:GroovyPageViewの処理中にエラーが発生しました:タグの実行中にエラーが発生しました:マッピング[/ user /(*)/ list]およびパラメーター[["action": "list"、 "controller": "map"、 "max" :20、 "offset":0、 "sort": "uploadDate"、 "order": "desc"、 "userId":null、 "totalMaps":30]]。パラメータ[userId]は必須ですが、指定されていません!/views/map/browse.gsp:26で
ページネーションは次のように機能します。
<div class="paginateButtons">
<g:paginate controller="map" action="browse" total="${mapInstanceTotal}"></g:paginate>
</div>
それに対して何ができますか、または私が望むものを実装する正しい方法は何でしょうか?
私は必ずしもそのURLマッピングを持っている必要はありません、私は言うための良い方法だけが必要です:「1人のユーザーだけの地図を表示する」