【问题标题】:How can I get the actual files of a node in drupal 7 with SQL query?如何使用 SQL 查询获取 drupal 7 中节点的实际文件?
【发布时间】:2015-07-08 14:14:19
【问题描述】:

我必须从drupal 7 数据库中获取数据,但是没有drupal 环境,所以我不能使用默认的drupal 类来获取它,只能使用SQL 代码。

我想获取一个节点的文件,我写了这段代码:

SELECT 
    tny_t.uri as tny,
    tny_t.filename as tny_name,
FROM ".$type."
LEFT JOIN dr_node
    ON dr_node.nid= ".$type.".entity_id
LEFT JOIN dr_field_revision_field_teljes_tm_nynyilatkozat
    ON dr_field_revision_field_teljes_tm_nynyilatkozat.entity_id=".$type.".entity_id
LEFT JOIN dr_file_managed as tny_t
    ON tny_t.fid= dr_field_revision_field_teljes_tm_nynyilatkozat.field_teljes_tm_nynyilatkozat_fid
WHERE dr_node.nid = ".$nid."

它给了我文件,但并不总是好的文件,因为旧文件及时被替换为其他文件。我认为这给了我较旧的文件。

【问题讨论】:

    标签: mysql sql drupal drupal-7


    【解决方案1】:

    在您的情况下,您必须使用“file_usage”表来跟踪文件的使用位置。 文件使用模式:

    因此您可以使用此请求查看与特定节点相关的所有文件:

    'SELECT * FROM file_usage fu 
    LEFT JOIN file_managed fm ON fu.fid = fm.fid  
    WHERE fu.type = "node"
    AND fu.id ='. $nid
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-27
      • 2011-07-23
      • 1970-01-01
      • 2014-10-31
      • 2011-09-10
      相关资源
      最近更新 更多