Tôi đang cố gắng sử dụng một Gaufrette Stream Wrapper để nói với AsseticBundle nơi để đổ tài sản dự án nhưng tôi không thể làm cho nó nhận ra chúng.Sử dụng Gaufrette Stream Wrappers với AsseticBundle
Đây là cách phần knp_gaufrette của config_dev.yml của tôi trông giống như:
knp_gaufrette:
adapters:
dev_adapter:
local:
directory: /vagrant/test
create: true
filesystems:
dev_adapter:
adapter: dev_adapter
stream_wrapper: ~
Tôi đã thử nghiệm wrapper sử dụng một hành động đơn giản để đảm bảo rằng nó được đăng ký đúng cách, và nó hoạt động tốt:
public function thanksAction()
{
file_put_contents('gaufrette://dev_adapter/test.txt', "ABC\n", FILE_APPEND);
return new Response(file_get_contents('gaufrette://dev_adapter/test.txt'));
}
Sau đó, tôi thiết lập cấu hình bó assetic như thế này (trong config_dev.yml quá):
assetic:
read_from: gaufrette://dev_adapter
write_to: gaufrette://dev_adapter
Tuy nhiên, khi tôi cố gắng để đổ tài sản sử dụng console assetic:dump --env=dev
tôi nhận được lỗi này:
Dumping all dev assets.
Debug mode is on.
10:53:28 [dir+] gaufrette://dev_adapter/css
[RuntimeException]
Unable to create directory gaufrette://dev_adapter/css
assetic:dump [--watch] [--force] [--period="..."] [write_to]
Thông tin thêm:
symfony/symfony: 2.5.0
symfony/assetic-bó: 2.3.0
knplabs/knp-gaufrette-bundle: 0.1.7
Bạn đã giải quyết được sự cố này chưa? –
Không, vẫn không. –
Trong trường hợp của tôi, nó xuất hiện vì lệnh ass dump: không thể tạo thư mục (mkdir() trong php). Tôi đang sử dụng trình bao bọc để tải tệp lên một cửa hàng đối tượng (OpenStack swift) không hỗ trợ thư mục. Không biết cách giải quyết vấn đề này vào lúc này :( –