2015-10-10 3 views
1

У меня есть таблица книг и поле isbn. Когда пользователь обновляет существующую книгу, если он изменяет код isbn и сохраняет, isbn следует проверять на уникальный, иначе уникальная проверка должна быть пропущена.Как проверить достоверность данных при изменении данных при обновлении

Существует уникальная проверка, но она проверяет, даже isbn не изменяется при обновлении.

У меня есть одна идея. Одна переменная будет добавлена ​​в модель книги, чтобы сохранить старое значение isbn. Когда запись будет обновлена, будет сравниваться старое значение и новое значение. Если он будет изменен, будет выполнена пользовательская проверка.

Это оптимальный способ или есть лучший способ сделать это?

+0

вы можете сделать 'isbn' поле для уникальной в проверке –

+0

@InsaneSkulll я сделал, но мне нужно, чтобы проверить uniquness на обновление только при изменении значения. –

+0

показать подтверждение из модель. –

ответ

0

как это работает, вы настраиваете:

['a1', 'unique'] 

и благодаря тому, что вы не можете иметь повторяющиеся значения в таблице.

Если вы хотите пропустить проверку проверки вашего isbn [когда пользователь обновляется, я не знаю, почему u сделал бы это? Вы хотите иметь две книги одного и того же? ], Сделать СЦЕНАРИЙ с некоторыми:

In update proecess if[book isbn is changed] 
set scenario 1; 
In update process if[book isbn isn`t changed] 
set scenario 2; 

in create process use deafult scenario 
+0

нет, его следует проверить, если isbn изменен. Я не думаю, что это можно решить с помощью сценария –

+0

Я хочу пропустить, если пользователь не изменил текущий ISBN, но в этой книге существует ISBN, если я не пропущу его, он дает сообщение об ошибке «This ISBN уже существует ». конечно, существует, потому что эта книга имеет этот ISBN. Уникальная проверка работает только с ISBN, на другой номер. Надеюсь, это имело смысл. спасибо за предложение ur. Это выглядит неплохо. –

Смежные вопросы