Уведомления

Группа в Telegram: @pythonsu

#1 Июль 4, 2014 12:46:25

alexbadaloff
От: Иваново
Зарегистрирован: 2013-04-11
Сообщения: 198
Репутация: +  16  -
Профиль   Отправить e-mail  

Flask-admin + обновление поля datetime автоматически при сохранении [решено]

Так я сделал поле dt неактивным:

class TerminalsView(sqla.ModelView):
    form_widget_args = {
        'dt':{
            'disabled':True
        }
    }



Когда я создаю запись, по умолчанию вбивается текущие дата-время:


И вот в чём вопрос. Как можно сделать, чтобы по кнопкам отправить или сохранить, данное поле обновлялось автоматически?
Я только триггером могу это организовать, а посредством sqlalchemy или Flask можно такое сделать?



————————–
Истина где-то рядом

Отредактировано alexbadaloff (Июль 15, 2014 20:32:56)

Офлайн

#2 Июль 15, 2014 14:00:52

kise97
Зарегистрирован: 2012-05-31
Сообщения: 83
Репутация: +  4  -
Профиль  

Flask-admin + обновление поля datetime автоматически при сохранении [решено]

# http://stackoverflow.com/questions/13370317/sqlalchemy-default-datetime
import datetime
from sqlalchemy import Column, Integer, DateTime
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class Test(Base):
    __tablename__ = 'test'
    id = Column(Integer, primary_key=True)
    created_date = Column(DateTime, default=datetime.datetime.utcnow)

Офлайн

#3 Июль 15, 2014 16:56:59

alexbadaloff
От: Иваново
Зарегистрирован: 2013-04-11
Сообщения: 198
Репутация: +  16  -
Профиль   Отправить e-mail  

Flask-admin + обновление поля datetime автоматически при сохранении [решено]

Так в том-то и дело, что default отрабатывает, но при создании записи.
Когда же ее меняешь (на скриншоте видно), дата уже есть, она просто не редактируема. И она опять же update делает со старой датой.
А нужно, чтобы то что в поле сейчас игнорировалось и вставлялась новая дата.



————————–
Истина где-то рядом

Офлайн

#4 Июль 15, 2014 18:50:43

kise97
Зарегистрирован: 2012-05-31
Сообщения: 83
Репутация: +  4  -
Профиль  

Flask-admin + обновление поля datetime автоматически при сохранении [решено]

У SQLAlchemy есть такой метод у модели, названия не скажу, не помню уже, но посмотрите в доке.

Офлайн

#5 Июль 15, 2014 19:39:40

Singularity
Зарегистрирован: 2011-07-28
Сообщения: 1387
Репутация: +  75  -
Профиль   Отправить e-mail  

Flask-admin + обновление поля datetime автоматически при сохранении [решено]

    Column('last_updated', DateTime, onupdate=datetime.datetime.now),

Офлайн

#6 Июль 15, 2014 20:32:24

alexbadaloff
От: Иваново
Зарегистрирован: 2013-04-11
Сообщения: 198
Репутация: +  16  -
Профиль   Отправить e-mail  

Flask-admin + обновление поля datetime автоматически при сохранении [решено]

Singularity
Column('last_updated', DateTime, onupdate=datetime.datetime.now),

То, что доктор прописал. Найденная по слову onupdate страница в документации



————————–
Истина где-то рядом

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version