Я разрабатываю расширение плагина CKAN, которое необходимо программно создать новый набор данных, а затем добавить к нему новый ресурс (файл). Не знаете, как это сделать. Любая помощь будет оценена.Как загрузить ресурс программно в пользовательский плагин CKAN?
Спасибо, PK
Я смог загрузить файл с помощью контроллера хранения, который является частью ядра. Но это не может быть хорошим способом сделать это, поскольку я напрямую обращаюсь к ядру. Я посмотрел код Ckanclient, который загружает через HTTP-вызов. Я думал, что это не лучший способ сделать это, когда мой код расширения и основной код ckan работают на одном сервере. Недавно я узнал о расширении ckanapi, который, похоже, позволяет получить доступ к API-интерфейсу действий и локально выполнять эти вызовы api (без http). Не уверен, хотя, если он поддерживает загрузку файлов. – user1380140
[ckanapi] (https://github.com/open-data/ckanapi) не поддерживает загрузку файлов, насколько я знаю. Я бы рекомендовал загружать файлы через API с помощью ckanclient, даже если ваш код работает на том же сервере, что и ваш экземпляр CKAN, насколько я знаю, нет другого поддерживаемого способа сделать это. Вы правы в том, что доступ к контроллеру хранилища напрямую не является хорошей идеей - в новой версии CKAN контроллер памяти может измениться и ваш код сломается. –