Регистрация пользователя с Parse-Server [дубликат]

Это все в «волшебном» синтаксисе вызова метода:

object.property();

Когда вы получаете свойство из объекта и вызываете его за один раз, объект будет контекстом для метода , Если вы вызываете тот же метод, но в отдельных шагах, контекст представляет собой глобальную область (окно):

var f = object.property;
f();

Когда вы получаете ссылку на метод, он больше не привязан к объекту, это просто ссылка на простую функцию. То же самое происходит, когда вы получаете ссылку на использование в качестве обратного вызова:

this.saveNextLevelData(this.setAll);

Здесь вы привязываете контекст к функции:

this.saveNextLevelData(this.setAll.bind(this));

Если вы используете jQuery вы должны использовать метод $.proxy, а bind не поддерживается во всех браузерах:

this.saveNextLevelData($.proxy(this.setAll, this));
7
задан Brian Tompsett - 汤莱恩 16 December 2015 в 18:31
поделиться

2 ответа

Да, Parse предоставляет методы для сохранения имени пользователя, паролей, таких как setUsername (params) и setPassword (params), но если вы хотите добавить больше данных в таблицы, вы можете создать больше столбцов в соответствии с вашими потребностями, как в этом фрагмент кода.

Если вы столкнулись с столбцами, созданными уже в парсинге парсера, таких как имя, телефон, адрес, cityState, companyId, вот как я это делаю.

private void savetoParse() {

        ParseUser user = new ParseUser();
        user.setUsername(usernameEditText.getText().toString());
        user.setPassword(passEditText.getText().toString());
        user.put("name", nameEditText.getText().toString());
        user.setEmail(emailEditText.getText().toString());
        user.put("phone", phoneNoEditText.getText().toString());
        user.put("address", addressEditText.getText().toString());
        user.put("cityState", cityStateEditText.getText().toString());
        user.put("companyID", compSchoolIdEditText.getText().toString());

        user.signUpInBackground(new SignUpCallback() {

            @Override
            public void done(ParseException e) {

                if (e != null) {

                    Toast.makeText(SignupActivityUpdate.this,
                            "Saving user failed.", Toast.LENGTH_SHORT).show();
                    Log.w(TAG,
                            "Error : " + e.getMessage() + ":::" + e.getCode());

                    if (e.getCode() == 202) {

                        Toast.makeText(
                                SignupActivityUpdate.this,
                                "Username already taken. \n Please choose another username.",
                                Toast.LENGTH_LONG).show();
                        usernameEditText.setText("");
                        passEditText.setText("");
                        confirmPassEditText.setText("");

                    }

                } else {

                    Toast.makeText(SignupActivityUpdate.this, "User Saved",
                            Toast.LENGTH_SHORT).show();

                    /*Do some things here if you want to.*/

                }

            }
        });

ПРИМЕЧАНИЕ. Первыми параметрами являются имя столбца, а второе - значение. Таким образом, он в основном действует как пара значений ключа.

Это решает проблему. Возможно, если это работает ... удачи ..:)

13
ответ дан mike20132013 21 August 2018 в 10:49
поделиться
  • 1
    Спасибо огромное! Это помогло, я последовал за тем, как вы это сделали, и я смог сохранить новые столбцы! – Amna 21 October 2014 в 22:11
  • 2
    Это потрясающе!!. Я рад, что смог помочь .. :) – mike20132013 21 October 2014 в 22:17
  • 3
    hi можем ли мы изменить таблицу по умолчанию (пользователя) на любую другую таблицу? – Nawaf 25 January 2016 в 13:14
  • 4
    Конечно, вы можете .. u всегда может создавать собственное имя таблицы или любые другие сущности в синтаксическом анализе. – mike20132013 27 January 2016 в 12:26
/**
     * user Registration here
     * save user registration value on server here
     */
    private void userRegistration()
    {
        progressDialog=new ProgressDialog(SignUpThirdPage.this);
        progressDialog.setMessage("Please Wait......");
        progressDialog.setCancelable(false);
        progressDialog.show();

        ParseUser user = new ParseUser();


        user.setUsername("Name");   
        user.setPassword(strPassword);
        user.setEmail(strEmailId);
        // surName column create on parse.com db you can check after run that code
        // like that u can add more column in signup table
         user.put("surName","Kumar");

        user.signUpInBackground(new SignUpCallback() {
            @Override
            public void done(com.parse.ParseException e) {
                // TODO Auto-generated method stub
                if (e == null) {


                    }

                } else {
                    // Sign up didn't succeed. Look at the ParseException
                    // to figure out what went wrong
                    e.printStackTrace();
                    progressDialog.dismiss();
                    if(e.getMessage().contains("already taken")){
                        alertDialog("", "you've already sign up , lets login in ", SignUpThirdPage.this, false);    
                    }
                    else if(e.getMessage().contains("has already been taken")){
                        alertDialog("", "you've already sign up , lets login in ", SignUpThirdPage.this, false);    
                    }
                    else {
                        AppConstants.showAlertDialog("", e.getMessage(), SignUpThirdPage.this, false);
                    }
                }
            }
        });
    }
0
ответ дан Rohitashv jain 21 August 2018 в 10:49
поделиться
  • 1
    Привет, ваш вопрос Решено или нет – Rohitashv jain 20 October 2014 в 13:33
  • 2
    Спасибо! Это помогло! Я смог заставить его работать! – Amna 21 October 2014 в 22:10
  • 3
    Привет, Амма, вы можете поднять мой ответ. – Rohitashv jain 22 October 2014 в 06:50
  • 4
    @Rohitashvjain у меня есть таблица & quot; table1 & quot; в синтаксическом анализе теперь как сохранить данные в этой таблице от android? – Erum 3 June 2015 в 09:36
Другие вопросы по тегам:

Похожие вопросы: