【问题标题】:[Symfony][Twig] - Twig display a null value while dumping the object shows a not null value[Symfony][Twig] - Twig 在转储对象时显示空值显示非空值
【发布时间】:2016-10-15 16:25:39
【问题描述】:

我正在开发环境中的交响乐项目。我正在尝试在树枝视图中显示一个对象。我的控制器通过查询实体存储库来获取对象,并将其提供给视图。

当我使用 twig {{ dump(article) }} 函数将对象转储到视图中时,这就是我的对象的样子:

Article {#983 ▼
  -id: 1
  -createDate: DateTime {#1155 ▼
    +"date": "2015-12-21 23:31:11.000000"
    +"timezone_type": 3
    +"timezone": "Europe/Berlin"
  }
  -updateDate: DateTime {#1063 ▼
    +"date": "2016-06-13 13:30:31.000000"
    +"timezone_type": 3
    +"timezone": "Europe/Berlin"
  }
  -author: "author"
  -title: "A good title"
  -content: "<p>For a good content</p>"
}

我可以访问对象内的所有值,“updateDate”除外。 如果我 {{ dump(article.createDate) }},我得到这个:

DateTime {#1160 ▼
  +"date": "2015-12-21 23:31:11.000000"
  +"timezone_type": 3
  +"timezone": "Europe/Berlin"
}

如果我 {{ dump(article.updateDate) }} 我得到这个:

null

虽然完整的对象转储给了我与 article.updateDate 的 article.createDate 类似的东西。

我该如何解决?我需要在我的树枝视图中使用我的 article.updateDate。

谢谢

【问题讨论】:

  • 你能用你用来生成它的 Twig 更新吗?我希望{{ createDate }} 默认不包含任何内容。而是 {{ article.createDate }} 包含该对象的 createDate 数据。
  • 这很奇怪..我认为您需要向我们展示更多信息,例如您的操作方法,实体,您的存储库方法等..
  • 试试这个{{article.updateDate|date("Y-m-d H:i:s")}}
  • 这是我尝试显示的内容,但它现在返回给我的日期,因为与过滤器关联的 var 为空

标签: php symfony twig


【解决方案1】:

dump() 方法在生产环境中不起作用。

例如: app.php -> 不工作。

app_dev.php -> 有效

【讨论】:

  • 感谢您的回答。我在开发环境中(app_dev.php)。
【解决方案2】:

好吧,尝试几件事:

  1. {{ updateDate }} 如果您将 Article 对象作为参数数组从控制器传递
  2. {{ article.getUpdateDate }}通过getter访问参数

【讨论】:

    【解决方案3】:

    谢谢伊格纳斯,

    我尝试使用吸气剂,效果很好。我不知道我可以在视图中使用getter,但它是如此合乎逻辑......

    我想我现在只在视图中使用 getter,我发现这更符合逻辑,因为我的实体属性是在私有中定义的......

    感谢大家的帮助!

    【讨论】:

      猜你喜欢
      • 2017-10-15
      • 1970-01-01
      • 1970-01-01
      • 2021-02-24
      • 2017-06-05
      • 2018-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多