web-dev-qa-db-ja.com

更新と保存

CRUD機能がたくさんあるアプリケーションに取り組んでいます。

要素を作成するときに、「保存」というラベルの付いたボタンがあります。

私の元々の考えは、この「保存」ボタンをすべての更新、編集、作成アクションに適用することでした。

今私は疑問に思っています、何を使うべきかについての好みはありますか?

Createのようなアクション:

フォームの下部では、保存と作成の両方をボタンとして使用できます。

編集のようなアクション:

フォームの下部では、更新と保存の両方を使用できます。

それとも、一貫性を保ち、それらすべてで保存を使用する方が良いでしょうか?

あなたはどう思いますか?

4
Mark

ユーザー(プログラマーではない)の観点から。何かを作成することと何かを編集(更新)することには違いがあります。ボタンのラベルでこの違いを示す方が良いでしょう。

これは文体的なことかもしれませんが、長いラベルの余地がある場合は、「Create Item」を「Create」ではなく使用する傾向があるため、アクションは非常に明確です。これにより、「キャンセル」や「リセット」などの2次アクションと比べてボタンがわずかに大きくなるため、ターゲットをより明確かつ簡単にヒットできます。

編集用。 「保存」や「更新」の代わりに「変更を保存」を使用する傾向がある

9
nightning

AndroidユーザーにいくつかのCRUD機能を許可するアプリを開発しているときに、少し前に同じ質問をしました。ユーザーのフィードバックに基づいて最終的に決定したのは、新しいアイテムを作成するときに「保存」を使用することでした。そして、既存のものを編集するときに「更新」します。ただし、個人的には気にしません。UIには、作成または編集しているかどうかを示す他の手掛かりがあるはずです。私のアドバイスは、ユーザーのフィードバックに固執し、それを最も簡単にすることですユーザーが理解しているとは限りません。

1
rodolfosrg

私が参加しているチームで、私たちの考えは次のとおりです。

pdateSaveはほぼ互換性があります。唯一の違いは、Saveは通常、ページ変更イベントを意味しますが、pdateは通常、変更内容が目に見えるものにすぐに適用されることを意味します(技術的に言えば、通常は付随します) AJAX操作。)

たとえば、私のチームが取り組んでいるアプリには、イベントが発生する日付を変更できるフォームがあります。 pdateセカンダリボタン-AJAX呼び出しを使用して変更を即座にバックエンドにプッシュする-とSaveプライマリの両方を使用しますボタン-ワークフローに戻ります。この画面は日付範囲の操作に使用されるため、このアプリでは独自のものです。日付を範囲に追加したり、削除したり、日を並べ替えたりすることもできます(簡単な説明が付いています)。したがって、ユーザーは何が何であるかを知っています。)

私たちはcouldpdateをプライマリアクションにし、Saveをセカンダリアクションにしますが、ユーザーが私たちのアプリのこのページを使い終わったとき、ユーザーは保存ボタンに引き寄せられる傾向があることに気付きました。彼らがまだ他のことをしたいと思っていて、安全に保存しているとき、それはpdateでした。

最後に、1つのオプションのみを提供する場合、それは実際にはそれほど重要ではないことに注意してください。どちらも、何が起こっているかについて良い印象を与えます。どちらのメリットも主張できるので、テスターに​​とってより明確に見えるものを使用することをお勧めします。また、色の手がかりを考慮することを忘れないでください。緑色のボタンはワークフローの進行状況を示します。そのため、保存によって別のページが読み込まれる場合は、その建設的な色を使用してください。

0
Andrew Gray

ここのチームでは、特にアプリケーションのHelpセクションの構築に取り組んでいます。

pdateSaveはボタンに違いがあると思います。ユーザーからデータを収集する場合は、ボタン上のテキストを「保存」として使用できます。既存のデータに対して何らかのアクションを実行している場合、それは「更新」になります。

0
JaganJ

アクションをローカルでキューに入れ、ボタンをクリックするとデータベースに累積的に適用されるインスタンスで機能するWordを探しているようです。

それが正しい場合、プログラムで言えば、(Submit ChangesまたはApply Changesを使用します。これは、ほとんどのエンティティフレームワークで使用される表現であり、all最後に取得されてからデータベースコンテキストに加えられた変更。

前述のエンティティフレームワークで使用されるコードは次のとおりです。

db.SubmitChanges();
0
Code Maverick