2

Как отключить кеш в среде cli?ZF: отключить плагин ресурсов в application.ini

Причина в том, что системному пользователю, выполняющему сценарий, не разрешено записывать в каталог кэша, поэтому скрипт не может выполнить.

В моей application.ini меня

[production] 

resources.cachemanager.database.frontend.name = Core 
resources.cachemanager.database.frontend.customFrontendNaming = false 
resources.cachemanager.database.frontend.options.lifetime = 7200 
resources.cachemanager.database.frontend.options.automatic_serialization = true 
resources.cachemanager.database.backend.name = File 
resources.cachemanager.database.backend.customBackendNaming = false 
resources.cachemanager.database.backend.options.cache_dir = HTTPDOCS_PATH "/data/cache/database" 
resources.cachemanager.database.frontendBackendAutoload = false 

[cli : production] 

* <] :-)

+0

Я спрашиваю, как отключить кеш в CLI, который наследует производство. – Phliplip

ответ

4

Попробуйте

resources.cachemanager.database.frontend.options.caching = false 

См API и ZF Reference Guide для $_options собственности в Zend_Cache_Core

+1

resources.cachemanager.database.frontend.options.caching = false resources.cachemanager.database.backend.options.cache_dir = "/ tmp" Решил мою проблему - Спасибо! – Phliplip

1

Как и вы, я не вижу очевидного способа отключить плагин в разделе конфигурации, который был зарегистрирован в родительском разделе. Было бы здорово, если бы Zend_Config_Ini допускал множественное наследование, вроде того, как HTML-элемент может иметь несколько классов CSS в атрибуте класса. (Думаю, это не так). Затем вы можете поместить регистрацию плагина в одну секцию [myplugsection], разрешить [production] продлить [myplug], а [cli] - это не так, как Doctrine имеет actAs шаблоны и beahviors.

Следующее, что может быть, это создать раздел, называемый как [core], содержащий большую часть того, что вы теперь используете в [production]. Оба [production] и [cli] могут продлить [core], но [production] зарегистрировал бы плагин, а [cli] - нет.

Конечно, альтернативой могло бы быть перемещение регистрации плагина в Bootstrap, где у вас есть более тонкое управление регистрацией плагина. В частности, вы можете позвонить по телефону $front->unregisterPlugin(), где $front - FrontController.

Просто вслух ...

Cheers!

+0

D'oh! Просто понял, что вы говорите о ресурсах, а не о плагинах. В принципе, однако, схема наследования, которую я изложил - использование '[core]' как родительского раздела commom для '[cli]' и '[production]' должно работать для любого содержимого, которое вы помещаете в раздел, включая 'resources. *' , –

 Смежные вопросы

  • Нет связанных вопросов^_^