Кэшируются в броузере

Тема в разделе "Lotus - Программирование", создана пользователем Zeka, 21 апр 2010.

  1. Zeka

    Zeka Well-Known Member

    Регистрация:
    1 сен 2009
    Сообщения:
    219
    Симпатии:
    0
    После сохранения формы в webе, во view она не сразу отображается. Можно "листать" view вперёд/назад, но документ не появляется, пока пользователь не нажмёт F5.

    Как это поправить?
     
  2. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    сделать кнопку обновления. Пусть кликают. Либо на js нечто типа reload(true).
     
  3. Zeka

    Zeka Well-Known Member

    Регистрация:
    1 сен 2009
    Сообщения:
    219
    Симпатии:
    0
    Спасибо, за мысль, но, подозреваю, как-то можно и без дополнительной кнопки.
    Вопрос только, как? :)
     
  4. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    ну, иногда юзали на кнопках, меняющих документ, нечто типа window.opener.reload (сейчас пишу по памяти) или определенный фрейм просто перегрузить...
    мб, это не есть гуд (
    аджаксом добавлять документ именно во вью не пробовали. возможно, и так можно.
    посмотри, в разработках oshmianski делал категоризированные вьюхи под веб. может, натолкнет на идеи реализации.
     
  5. etc

    etc Гость

    никак
     
  6. etc

    etc Гость

    Ф5 тоже не помогает.
     
  7. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    офф:etc, не вредничай - сделай Reload и будет тебе счастье...)
     
  8. etc

    etc Гость

     
  9. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.073
    Симпатии:
    299
    "разместить" вью на форме (ключевые слова $$ViewTemplate for), а там задать не кэшировать (в метатегах)
    типа: "<META HTTP-EQUIV=\"Expires\" CONTENT=\"0\"><meta HTTP-EQUIV=\"Cache-control\" СONTENT=\"no-cache\"><meta http-equiv=\"Pragma\" content=\"no-cache\">"
    в HTML Head Content
     
  10. etc

    etc Гость

    ps:вы если че, сппрашивайте меня, я из лотус тим!!!
     
  11. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.073
    Симпатии:
    299
    это к чему? :)
     
  12. etc

    etc Гость

    Ну мы же в лотусовой ветке, говорю народу чтобы не стеснялись.
     
  13. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    офф: etc - да, у тебя уже немного получается, только вот сразу так - "никак" - обламывать народ не стоит)))
    да и рыжий цвет тебе подходит... лучше фиолетового. К красному нику вернуться еще пока не хочешь?)
    тут lmike прав, про это как-то забыла
     
  14. etc

    etc Гость

    Браузеры не смотрят на метатеги, метатеги для неудачников.
    OKEN я этого саксола так не люблю, что даже кушать не могу.
     
  15. Zeka

    Zeka Well-Known Member

    Регистрация:
    1 сен 2009
    Сообщения:
    219
    Симпатии:
    0
    Добавление мета тэгов, как советовал Inmike, в IE7 не помогает.

    Проблему решил добавлением computed field с @SetHTTPHeader("Cache-Control";"no-store").
     
  16. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.073
    Симпатии:
    299
    этота команда делает тоже самое (добавляет метатеги)
     
  17. NetWood

    NetWood Lotus team
    Lotus team

    Регистрация:
    17 апр 2008
    Сообщения:
    308
    Симпатии:
    0
    ну и закончу в общем ;)
    @SetHTTPHeader("Last-Modified";mydate):mad:SetHTTPHeader("Expires";@Adjust(mydate;0;0;0;0;10;0)):mad:SetHTTPHeader("Cache-control";"no-cache"):mad:SetHTTPHeader("pragma";"no-cache");
    computed field не обязательно. это ставим на форме в Содержимое заголовка ХТМЛ. так оно лучче, ведь это ж специальное для размещения всякого мета. кстати туда же пишем объявленные скрипты и стили типо так:

    "<script src=\""+base+"/"+wdbn+"/JsDbCommonVariables?ReadForm\"></script>"+@Char(13)+
    "<script src=\""+base+commonlibpath+"\"></script>"+@Char(13)+
    "<script type=\"text/javascript\" src=\""+base+"/"+wdbn+"/js/jquery-1.2.6.min.js\"></script>"+@Char(13)+
    "<script type=\"text/javascript\" src=\""+base+"/"+wdbn+"/js/jquery.lightbox-0.5.pack.js\"></script>"+@Char(13)+
    "<link rel=\"stylesheet\" type=\"text/css\" href=\""+base+"/"+wdbn+"/css/jquery.lightbox-0.5.css\">"+@Char(13)+
    "<script type=\"text/javascript\" src=\""+base+"/"+wdbn+"/scripts/dFilter.js\"></script>" + @Char(13)+
    "<script language=JavaScript>"+@Char(13)+
    "_doSetCookie('lasturl','"+Path_Info+"');"+@Char(13)+
    "_doSetCookie('ui','shop','persist','1');"+@Char(13)+
    "</script>"+@Char(13)
     
  18. Zeka

    Zeka Well-Known Member

    Регистрация:
    1 сен 2009
    Сообщения:
    219
    Симпатии:
    0
    Между @SetHTTPHeader и метатэгами разница всё же есть:

    @SetHTTPHeader("Cache-Control";"no-store") добавляет параметр в заголовок HTTP response'а.

    А метатэги добавленые в HTML Head Content добавляются в <head> самой HTML страницы.
     

Поделиться этой страницей