web-dev-qa-db-ja.com

結果が削除された後、どのページに行くべきですか?

ページ付けされた方法で表示されるユーザーのリストがあり、これら2つのシナリオの処理方法を決定する必要があります。

シナリオ1

  • 41ユーザー、1ページあたり10ユーザー-5ページあり、5番目のページは1行になります。
  • ユーザーが5番目のページを表示していて41番目のユーザーが削除されている場合、どのページにユーザーをリダイレクトする必要がありますか?

シナリオ2

  • 38ユーザー、ページあたり10ユーザー-4ページあり、4番目のページには8ユーザーが含まれます。
  • User1は現在3ページ目を表示しています。
  • User2は3番目のページに移動して10行すべてを削除するため、合計で28行になります。
  • User1が4番目のページに移動しようとすると、古くなっています。

これらの状況を処理する正しい方法は何ですか?このような状況で予想される動作はありますか?

9
Rpj

最初のシナリオについて:孤立したアイテムを回避することをお勧めします。私のアドバイスは、ページあたり10人のユーザーに固執し、4ページ目に11人のユーザーを表示することです。 4ページ目のすべてのアイテムを削除する場合は、ページ番号からページ番号を削除して、ユーザーを3ページ目に戻します。

2番目のシナリオについて:AJAXを介してリアルタイムでリストを更新し、削除されたアイテムを正しく削除することが最善です離れて(すぐにページネーションを更新する);これは、追加のEdge状況(たとえば、User1が、User2によってすでに削除されたアイテムに対してdeleteを呼び出す状況)を回避するのに役立ちます。

ページネーション自体について:アイテムの長いリストをナビゲートする方法としてこれを導入するのは悪い考えです。次の2つのシナリオが考えられます。

1つ目は、リストが短い(100アイテム未満とする)ことです。つまり、フィルタリングして並べ替える方法を使用して、リストをそのまま表示できます。この状況でページ分割を導入しても、ユーザーにとっては複雑であり、アプリケーションに余分な摩擦をもたらすだけです。

2番目-リストが長い(200 +、300 +、1000 +)これは、何か間違っていることを意味し、おそらくユーザーはリスト全体を見る必要はありません(ほとんどの場合、見る必要はありません)。この場合、ページネーションも特効薬ではありません。また、ページ分割を回避することで、解決しているような状況を回避できます。ページネーションは、あなた(あなたに愚かなEdgeの状況を考えるように強いることによって)とユーザーの両方に針の摩擦を導入するだけです。

ページネーションについて考えることに時間を費やすことに興味があるなら、これはもっと読んでいます: http://www.codinghorror.com/blog/2012/03/the-end-of-pagination.htmlhttp://www.slate.com/articles/technology/technology/2012/10/website_pagination_stories_should_load_into_a_single_page_every_time_.html

5
Ruslan

それはあなたが最近空になったページをどのように扱っているかによります。完全に削除する前に、短い間、空のページとして表示しますか?または、すぐに404エラーを出しますか?

シナリオ1:

「最後のページ」の最後の唯一のエントリを削除し、新しい最後のページにリダイレクトする必要があるため、4番目のページにリダイレクトになるはずです。

5番目のページを空(「このページにコンテンツがありません」)として再ロードでき、ユーザーがそこから移動すると、5番目のページに再度アクセスできないと主張できます。

シナリオ2:

User2が3ページ目の10行を削除すると、4ページ目は本質的に3ページ目になります。 user1がページ4をクリックすると、コンテンツはもう利用できませんを取得し、同じページをリロードしてコンテンツを更新する必要があります。ここで、デザインで必要な場合は、ここで「3ページのコンテンツが削除され、4ページのコンテンツが3ページに移動されました」という状況を説明することができます。

Ajaxを使用してコンテンツを処理している場合、ser2がページ3を削除するとすぐにページ4へのリンクを削除しますで、現在表示しているコンテンツが削除されたことをユーザーに通知しますか何か。

3
rk.