1

私はWebプログラミングの初心者で、ソーシャルネットワークのようにパスワードを変更する機能を作成する必要があります。初めてやってるのですが、どうしたらいいのかわかりません。建築の作り方がわかりません。ユーザー側で backbone.jsを使用しています。userModel(これはバックボーンモデルです)を作成します。サーバー側では、Javaを使用しています。私は1つのアイデアを持っています:UserClass(これはJavaクラスです)に名前を付けた新しいフィールドを追加します

@JsonIgnore
String oldPassword;

@JsonIgnore
String newPassword;

JsonIgnoreは、ユーザー側でフィールドを非表示にします。ユーザー側からuserModelでフィールドを送信するので、サーバー側でチェックインします。アイデアは良くないと思います。何かご存知の方は教えてください!

編集

html-formの作り方を知っています。fildをサーバーに送信する方法がわかりません。私がそうするなら:

var val1 // old_pass
var val2 // new_pass
this.model.save({password: val1,new_password: val2});

次に、モデルパスワードをval1に変更します。これは正しくありません。ユーザー側でモデル化されていないため、ユーザー側でパスワードが設定されていません。

4

1 に答える 1

2

サーバー認証プロセスがどのように機能するかはわかりませんが、このようなことを試すことができるかもしれません. user modelユーザー属性を編集するための内部を持つ新しいビューを作成します。そのビュー内で、パスワードを含むユーザー属性を表示するフォームをレンダリングします。フォーム上で、ユーザーは自分の情報を変更できます。変更を保存するための「保存」などのボタンがあります。saveボタンがクリックされると、モデルメソッドを使用してフォームから値を取得する関数を作成します。このメソッドは、Backbone に PUT コマンドを実行させてサーバーに戻します。サーバー上で、この要求を処理してパスワードを変更できるはずです。ビューの変更を保存するために作成できる非常に単純な関数は、次のようになります。

changePassword = function() {
 var attributes;
 attributes = {
  password: $('#password').val(),
  confirm_password: $('#confirm_password').val()
 };
 this.model.save(attributes);
};

この関数は、パスワード フィールドで満たされた属性オブジェクトを作成し、それをサーバーに送り返します。メソッドがどのように機能するかについてもう少し理解したい場合は、バックボーンのドキュメントsaveを確認してください。お役に立てれば!

于 2013-02-28T12:54:25.503 に答える