Доброго времени суток.
По аяксу отправляю на сервер запрос с данными изменения ноды, загружаю ноду через node_load($nid), редактирую результат, после чего сохраняю изменения через node_save($node)
После сохранения ноды, вызывается функция которая получает nid ноды делает кое какие свои манипуляции и загружает ноду снова через node_load(). Но как я вижу нода загружается в виде не измененной и по аяксу возвращаются данные как будто ничего не менялось, а вот если второй раз отправить аякс то возвращаются данные которые были введены в предидущий раз. node_load($nid, NULL, TRUE) дает такой же результат. Объясните в чем проблема я что то не понимаю..
Комментарии
В D6 node_save делает cache_clear_all, он еще по почистился когда Вы делаете node_load
так вот в том то и фокус что при всех этих сбросах кеша, при лоаде все равно старая версия ноды получается. какая то магия
Фокуса нет, static-кеширование не сбрасывается cache_clear_all(), нужно указывать параметр $reset в node_load().
Так же, непонятно зачем делать node_load(), если после node_save() доступен новый объект ноды
тоже не проходил такой номер, хотя должен был 100% сбросится статик
так исторически сложилось что функция которая выполняет node_load сидела на хуке меню и принимала nid, а теперь понадобилось при изменении ноды запускать эту функцию и проверять результат..