parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

2 Misha v.3 - Предложение по классу авторизации...

BeaVe 17.02.2006 11:27 / 17.02.2006 12:20

Может быть Вы это уже изменили, а может и нет, а может вообще не сочтёте нужным...

Версия: 1.76

Метод: @insertUser[]
Строка: 628

До:
^if(def $additional_fields.fields.update){
	, '$user_data.[$additional_fields.fields.field]'
}
После:
^if(def $additional_fields.fields.update){
	, ^if(def $user_data.[$additional_fields.fields.field]){'$user_data.[$additional_fields.fields.field]'}{NULL}
}
Метод: @updateUser[]
Строка: 760

До:
^if(def $additional_fields.fields.update){
	, $additional_fields.fields.update = '$user_data.[$additional_fields.fields.field]'
}
После:
^if(def $additional_fields.fields.update){
	, $additional_fields.fields.update = ^if(def $user_data.[$additional_fields.fields.field]){'$user_data.[$additional_fields.fields.field]'}{NULL}
}
Какой результат?
Теперь в БД не летят пустые данные с формы... А не указанные данные ставятся как NULL.
Не удивлюсь, если у Вас есть более удобный способ решения такой ситуации...

Что делаю я с полями, которые нужно сделать обязательными для заполнения?
1) Редактирую метод @getErrors[]:
@getErrors[]
$result[^table::create{id	name
1	not_logged
2	login_empty
4	login_exist
8	password_empty
16	password_confirmation_error
32	email_empty
64	email_wrong
128	user_not_found
256	multiple_user_found
512	last_name_empty
1024	first_name_empty
2048	middle_name_empty
32768	unknown
}]
#end @getErrors[]
2) Редактирую методы @insertUser[], @updateUser[]:
...
^if(!def $user_data.[last_name]){
	^addErrorCode[last_name_empty]
}
^if(!def $user_data.[first_name]){
	^addErrorCode[first_name_empty]
}
^if(!def $user_data.[middle_name]){
	^addErrorCode[middle_name_empty]
}
...
Думаю для всех понятно, что методы редактирую в классе прослойке.