Когда скомпилированные активы кэшируются в рельсах - PullRequest
1 голос
/ 14 октября 2011

Когда я прекомпилирую мои ресурсы для приложения rails 3.1 с rake assets:precompile, он выдает старую кэшированную версию, если в файлах ресурсов ничего не меняется.Я могу сказать, потому что мой erb использует константу, которую я пытался изменить в другом месте моего приложения.Обходной путь - изменить один из файлов css (например, добавив пробел и т. Д.) Перед повторной прекомпиляцией, но это очень сложно, и я хотел бы попытаться отключить это кэширование, если это возможно.Есть идеи???

1 Ответ

2 голосов
/ 18 октября 2011

Это ожидаемое поведение конвейера - ERB оценивается только один раз, когда вы прекомпилируете. Значение во время компиляции - это значение, которое вы получаете в файле.

Кэширование основано на проверке временной метки файлов. Вы можете запускать Sprockets в рабочей среде без предварительной компиляции (это называется оперативной компиляцией), но вы не можете отключить кэширование, потому что производительность будет ужасной - каждый отдельный запрос потребует, чтобы Sprockets перекомпилировал все файлы.

Извините :-(

...