Как сделать поле базы данных только для чтения в направляющих?

Отделывание ответа Jonathan.

UPDATE tbl
   SET title = new_val
FROM mapper
WHERE title IN (SELECT old_val FROM mapper)
     AND mapper.old_val = tbl.title;

Его начальная версия потребовала бы большого количества чтений к таблице картопостроителя.

22
задан approxiblue 4 January 2017 в 02:44
поделиться

2 ответа

Вы хотите использовать attr_readonly :

Атрибуты, указанные как только для чтения, будут использоваться для создания новой записи, но операции обновления будут игнорировать эти поля.

class Customer < ActiveRecord::Base
    attr_readonly :your_field_name
end
52
ответ дан 29 November 2019 в 04:04
поделиться

And that field is always and by definition "correct" (i.e. an accurate representation of reality) at the time of insertion ?

No user ever makes a mistake when entering that field for the first (and in your scheme : only) time ?

2
ответ дан 29 November 2019 в 04:04
поделиться
Другие вопросы по тегам:

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