These are chat archives for dou-ua/python

15th
Nov 2015
ex3me0
@ex3me0
Nov 15 2015 08:48

господа, втф?
во вьюхе:

    if form.is_valid():
        ch = form.save()
        print(ch.file.name)

выдает "file.ext"

в модели же:

    def save(self, *args, **kwargs):
        super(Check, self).save()
        print(self.file.name)

выдает "path/to/file.ext"

сам "path/to/" - это путь указанный в качестве аргумента upload_to
читал доку, там указано, что file.name - должен возвращать как раз "path/to/file.ext"
но почему тогда во вьюхе иначе?
Kostiantyn Rybnikov
@k-bx
Nov 15 2015 09:32
@ex3me0 треба код з дебагером дивитись. Думаю, що об’єкт, що повертає form.save може бути відмінним від моделі (хоча, це так, пальцем в небо).
Oleksiy
@doubledare704
Nov 15 2015 10:53
мені чогось здається що сейв десь перевизначається
Kostiantyn Rybnikov
@k-bx
Nov 15 2015 11:00
ну, простим import ipdb; ipdb.set_trace() ви можете зупинитись і покроково перевірити що за чим відбувається на тому ж save
ex3me0
@ex3me0
Nov 15 2015 19:48
@k-bx побегал pycharm'овским дебагером - так нифига и не понял
походу магия происходит в FileField и FieldFile
с кешированием в джанго что-то никак не разберусь
не пойму как закешировать кверисет
у меня через $.load() страница обновляется каждые 1500мс, соотв. каждый промежуток времени - выполняется запрос к БД из вьюхи
ex3me0
@ex3me0
Nov 15 2015 19:54
беда в том, что данные могут обновиться через 60сек, например
т.е. все остальное время - БД будет не слабо нагружена, возвращая одни и те же результаты
вот этот момент хочется пустить под кеш