it-swarm.it

Allegare file server esistenti a filefield

Come si imposta un percorso file esistente per un campo file, in Drupal 7? L'unica opzione che vedo è quella di caricare nuovamente il file.

In Drupal 6, FileField Sources sembra fare questo.

FileField Paths o IMCE insieme al campo file consente l'assegnazione dei file del server?
Esiste un'API per gestire a livello di programmazione campi di file?

Modifica
Ho appena scoperto che questo può tutto da fare con il modulo multimediale. Ho anche mediaelement installato. Tuttavia non è completamente intuitivo, quindi ecco i passaggi che ho preso:

Importa in libreria multimediale: /admin/content/media/import

Creare un mediafile asset campo. Ciò ti consente di collegarti dalla libreria.

I formati di visualizzazione (esempio per l'audio) sono in /admin/config/media/types/manage/audio/display/, invece del tipo di contenuto "gestisci display" che fornisce solo "grande", "piccolo", "anteprima", ecc.

7
brian_d

Vorrei provare Media e i suoi moduli associati. È un'evoluzione di FileField Sources e fornisce la maggior parte dello stesso tipo di funzionalità sebbene con Drupal 7 campi.

3
Kim Pepper

FileField Sources è stato portato per D7 ed è fantastico. Esiste anche un modulo chiamato Visual select file cosa aggiunge abbiliti per la selezione basata su Nice Views di file esistenti (buono per le immagini).

3
Bobík

Ho scelto IMCE in combinazione con IMCE for FileField (D7) perché il client necessitava di una selezione rapida e poco rigida dei file caricati con ftp - e questo senza duplicarli per ogni nodo.

Per quanto vedo le fonti di Filefield al momento duplicano sempre i file allegati. Anche l'importatore fornito da Media lo fa.

3
phils

Posso aiutarti ad allegare un file a un file. Tuttavia, non ho tentato di ottenere un widget di completamento automatico per ottenere il file che si desidera allegare al campo file.

puoi usare file_get_contents() per afferrare il file che vuoi allegare e quindi usare file_save_data per inserirlo in Drupal. Il problema è che dovrai cambiare lo stato del file che hai appena aggiunto in modo da poterlo collegare a un nodo in un secondo momento. In caso contrario, otterrai un errore di convalida.

$file = file_save_data($data, $destination = NULL, $replace = FILE_EXISTS_RENAME);

db_update('file_managed')
  ->fields(array('status' => 0))
  ->condition('fid', $file->fid, '=')
  ->execute();

Una volta che il modulo viene inviato con il fid come valore per il campo file che si desidera allegare allo stato dei file gestiti verrà aggiornato automaticamente.

Dai un'occhiata a http://api.drupal.org/api/drupal/includes--file.inc/group/file/7 per ulteriori riferimenti.

2
Jepedo

Puoi sempre scegliere l'approccio File come Node e utilizzare un campo di riferimento Node + Formatter personalizzati (per rendere Node come un File) per fare ciò, che ti consentirebbe di aggiornare il nodo File e avere tutti i riferimenti di quel nodo File aggiornati su tutta la linea.

In D6 puoi anche usare Node Relationships per fornire una libreria di file e Formatters 4 Node campo di riferimento per formattare il nodo come qualsiasi formattatore FileField disponibile.

1
Decipher

FileField Sources non è stato ancora portato su Drupal 7, ma è pianificato. Vedi problema corrispondente su drupal.org .

1
Pierre Buyle