Como você define um caminho de arquivo existente para um campo de arquivo no Drupal 7? A única opção que vejo é fazer upload do arquivo novamente.
No Drupal 6, o FileField Sources parece fazer isso.
Os caminhos FileField ou IMCE, juntamente com o campo arquivo, permitem a atribuição de arquivos do servidor?
Existe uma API para gerenciar programaticamente os campos de arquivo?
Editar
Acabei de descobrir que tudo isso pode ser feito com o módulo de mídia. Eu também tenho o mediaelement instalado. No entanto, não é completamente intuitivo, então, aqui estão os passos que eu segui:
Importar para a biblioteca de mídia: /admin/content/media/import
Crie um mediafile asset
campo. Isso permite que você se conecte a partir da biblioteca.
Os formatos de exibição (exemplo de áudio) estão em /admin/config/media/types/manage/audio/display/
, em vez do tipo de conteúdo "gerenciar exibição", que fornece apenas "grande", "pequeno", "visualização" etc.
$node = node_load($nid); $node->field_myfilefield[$node->language][0] = $file; node_save($node);
deve funcionar? 2) Suponho que devo definir o status novamente1
após anexar ao nó? Ou faznode_save
isso por mim? Obrigado!file_get_contents()
lo. Você deveria usardrupal_http_request()
.Você sempre pode usar a abordagem Arquivo como Nó e usar um campo Referência de Nó + Formadores Personalizados (para renderizar o Nó como um Arquivo) para fazer isso, o que permitiria atualizar o nó Arquivo e ter todas as referências desse nó Arquivo atualizadas. de maneira geral.
No D6, você também pode usar Relacionamentos de nós para fornecer um campo Referência da biblioteca de arquivos e formatadores de 4 nós para formatar o nó como qualquer formatador de FileField disponível.
fonte
O FileField Sources ainda não foi portado para o Drupal 7, mas está planejado. Veja o problema correspondente em drupal.org .
fonte