Как избежать привязки некоторых полей? - PullRequest
3 голосов
/ 22 декабря 2011

Используя проверку от PlayFramework и привязку данных, можно ли (возможно) через декоратор избежать привязки некоторых полей?

Например, у меня есть эта модель:

class User extends Model {
    @Required
    @Email
    public String email;

    // I'd like to avoid setting this
    public String password;
}

и в моей модели:

Store store = new Store();
Binder.bindBean(params.getRootParamNode(), store, null);        
validation.valid(store);

Если пользователь POST email и пароль, пароль также будет установлен, но я не хочу.

Как я могу это сделать

1 Ответ

4 голосов
/ 22 декабря 2011

Если вы не хотите сохранять данные, но хотите, чтобы они были связаны как часть автоматического связывания, вы можете использовать аннотацию @Transient ...

Пример

class User extends Model {
    @Required
    @Email
    public String email;

    // I'd like to avoid setting this
    @Transient
    public String password;
}

Если вы не хотите, чтобы он был связан, используйте аннотацию NoBinding

@play.data.binding.NoBinding

Пример

public class User extends Model {
    @NoBinding("profile") public boolean isAdmin;
    @As("dd, MM yyyy") Date birthDate;
    public String name;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...