CFWheels - updateByKey() - Аргумент ключа содержит недопустимое значение
<cfset result = model("user").updateByKey(
key=authUser.user_id
, encryption_key=local.encryptionKey
)>
Приведенный выше код возвращает следующую ошибку в cfwheels:
Ключевой аргумент содержит недопустимое значение.
Предлагаемые действия
Аргумент key содержит список, однако в этой таблице нет составного ключа. Для аргумента ключа допускается список значений, но это применимо только в случае, когда таблица содержит составной ключ.
Теперь я решил эту проблему с помощью метода update all следующим образом:
<cfset recordsReturned = model("user").updateAll(
encryption_key=local.encryptionKey
, where="user_id=#authUser.user_id#"
)>
Я проверил базу данных и не могу найти дубликаты первичных ключей. Я также попытался установить instantiated=false
аргумент в updateByKey
метод, но это тоже не сработало. Любое объяснение того, почему это может произойти, будет оценено.
ps: ближе всего у меня есть первичный ключ в таблице, кроме user_id, это email_адрес, который уникален, чтобы не допускать дублирования.