- Accueil
- Info légales
- Aide (FAQ)
- Les tags de ce site
- Bloc note
- Articles techniques
- Notes system
- Divers articles
- Drupal
- Notes ITIL 2007
- Notes MS
- Dans le quartier...
- Emploi
- Recettes de cuisine et adresses gourmandes
- mes applis ubuntu préferées
- Divers acronymes du monde social
- Internet 2018
- P2 meublé à louer - quartier du Poteau 75018
- apcos - réseaux sociaux et outils
- Articles techniques
- Divers liens
- Fun
- Mon CV IT
- Nouveautés
Views 3 de type fichier
Conf générale du drupal 7
Le site transforme est un drupal 7.31 bilingue, qui a les modules (au 14 oct 2014):
- Imagecache Token 1.x-dev, ckeditor 7.x-1.15 et ckeditor link 2.3, Language icons 1.1, pathauto 1.2 et transliteration 3.2, metatag 1.4, plupload integration module 1.6, variable views 2.5, views 3.8
- Internationalization 7.x-1.11 (avec les sous modules: String trans, translation sets, variable translation, et block languages, contact translation, field trans, menu trans, multilingual content , multilingual select, path translation, syncro trans, taxonomy translation, translation redirect, user mail trans et views translation 3.x-dev)
Ce site a 2 types de contenu: Album (champs images: field_tofalb 6 maxi avec widget image) et Chantier (field_tofch 6 maxi en medium). Les taxonomies sont en "Translate" (termes différents selon langue).
On souhaite créer une vue qui affiche toutes les images pour un type de contenu (Album). Les premiers essais affichent les contenus en double à cause de la langue du contenu.
Création d'une vue, de type fichier
Créer une vue, de type page en tableau, avec le chemin /pimgalbum. Sauver.
Les deux relations
Ajouter la relation sur field_tofalb en cochant "require this relation ship".
Si l'on ajoute que cette relation, tout sera en double voire quadruple => il faut ajouter une seconde relation.
Ajouter une relation sur Traduction du contenu: Translations qui utilise field_tofalb (voir image de doite).
Sauver.
Puis ajouter les champs (nom, ID, taille...)
field | Conf (avec note éventuelle) |
---|---|
Nom | Link this field to download the file (utile pour voir url complète au survol) |
Chemin |
Note on a 2 cases à Cocher qui apparaissent ici (décochées): - Display download path instead of file storage URI (will provide the full download URL rather than the internal filestream address.) - Link this field to download the file (Enable to override this field's links) |
Entity ID |
Sur relation translations Rewrite result / Output this field as a link / link path: node/[id] absolute path cochée Au survol d'un lien anglais, l'ID est à la 4e place. Pour les liens fr, de la forme pathauto (ex: fr/content/pathauto) |
Image |
Sur relation translations: Style: thumb ou mini50x50, pas de lien. Note Partie Plus: liste "Column used for click sorting" où on voit width et height |
Langue | Sur relation translations: cocher " Link this field to the original piece of content" |
Taille |
en KB/MB ou Raw bytes, mais où trouver la taille (largeur et hauteur)? probablement dans la table field_revision_field_tofalb ou field_data_field_tofalb En recherchant sur le web, il faudrait le module file entity. |
Note: avec la relation, on a que les images liée au node via le champs, et non les images ajoutée dans le body avec ckeditor.
Pour terminer
Ajouter les filtres (et les exposer): langue contenu (avec relation Translations, sinon doublon) et promu en page d'accueil (avec relation Translations).
Puis ajouter le tri sur ces champs: partie Format/Paramètres (tri par défaut: Upload date du fichier).
La partie gauche de la vue doit donc ressembler à l'image de droite.
En PJ, l'export de la vue.
Diverses notes
Voir mes notes sur les tables.
Tokens de type fichiers
[filename] == Fichier: Nom
[uri] == Fichier: Chemin
[fid] == Fichier: Identifiant (ID) de fichier
[status] == Fichier: Statut
[filesize] == Fichier: Taille
Query générée
C'est très moche...
SELECT file_managed.filename AS file_managed_filename, file_managed.uri AS file_managed_uri, file_managed.fid AS fid, file_managed.status AS file_managed_status, file_managed.filesize AS file_managed_filesize, file_managed.timestamp AS file_managed_timestamp, node_node__file_usage.id AS node_node__file_usage_id, node_node.nid AS node_node_nid, node_node.language AS node_node_language, node_node.promote AS node_node_promote, 'node' AS field_data_field_tofalb_node_entity_type
FROM
{file_managed} file_managed
INNER JOIN {field_data_field_tofalb} field_data_field_tofalb ON file_managed.fid = field_data_field_tofalb.field_tofalb_fid AND
(field_data_field_tofalb.entity_type = 'node' AND field_data_field_tofalb.deleted = '0')
INNER JOIN {node} field_tofalb_file_managed ON field_data_field_tofalb.entity_id = field_tofalb_file_managed.nid
INNER JOIN {node} node_node ON field_tofalb_file_managed.nid = node_node.tnid
LEFT JOIN {file_usage} node_node__file_usage ON node_node.nid = node_node__file_usage.id AND node_node__file_usage.type = 'node'
WHERE (( (node_node.promote = '0') ))
ORDER BY file_managed_timestamp ASC
LIMIT 10 OFFSET 0
add relationships de type content revision
Création d'une vue fichier avec le module File_entity
Doc tek:
Fichier attaché | Taille |
---|---|
pimgalbum1.txt | 23.14 Ko |