<p>Yes I can confirm, currently the <code>dateUpdated</code> property returns the same datetime object for every block model. It's actually the save date of the entry (<code>entry.dateUpdated</code>) that is saved to the <code>craft_matrixblocks</code> table in the DB. </p>

<p>Can't say if it's intended to work like this though.</p>

CC BY-SA 3.0
2014-08-23T19:36:59.937Z
Thanks for confirming @carlcs. If this _is_ the intended behavior, its a bit of a bummer because I have a use case (checking for recently-updated matrix blocks via a javascript JSON request) that is far more difficult, maybe even impossible, without a unique updated date time for each block. It's also inconsistent, because each block **does** have a unique `date_created` property.
cmal
CC BY-SA 3.0
2014-08-28T07:19:01.090Z
@cmal the (shared) property is probably only saved to make this work: `block.dateUpdated`. But actually that wouldn't be necessary because you could also do: `block.owner.dateUpdated`.
carlcs
CC BY-SA 3.0
2014-08-28T07:19:31.293Z
I did a [feature request](https://plus.google.com/101325980081569498457/posts/YUcDZu9sdkz) for this on g+.
carlcs
CC BY-SA 3.0
2014-08-22T00:15:54.993Z
2014-08-22T00:15:54.993Z
carlcs
<p>After doing some experimentation in looping through <code>MatrixBlockModel</code>, it seems that even though each block has a <code>dateUpdated</code> property, this value is never unique to each block, but is shared between all blocks in the Entry.</p>

<pre><code>{% set timeLimit = now | date_modify("-2 min") %}
{% for block in entry.blocks %}
  {% if block.dateUpdated &gt;= timeLimit %}

    {{ block.dateUpdated | date(dtFilter) }}

  {% endif %}
{% endfor %}
</code></pre>

<p>If the entry has 6 blocks, and I update one of those blocks and save, the same date will output 6 times for about 2 minutes, then nothing will output.</p>

<p>Can anybody confirm this?</p>

<matrix><datetime>
Does each MatrixBlockModel in an entry have a unique dateUpdated?
# Does each MatrixBlockModel in an entry have a unique dateUpdated?

(Asked by: username_0 on 2014-08-21)

After doing some experimentation in looping through MatrixBlockModel, it seems that even though each block has a dateUpdated property, this value is never unique to each block, but is shared between all blocks in the Entry.
{% set timeLimit = now | date_modify("-2 min") %}
{% for block in entry.blocks %}
  {% if block.dateUpdated >= timeLimit %}

    {{ block.dateUpdated | date(dtFilter) }}

  {% endif %}
{% endfor %}

If the entry has 6 blocks, and I update one of those blocks and save, the same date will output 6 times for about 2 minutes, then nothing will output.
Can anybody confirm this?

**Tags:** matrix, datetime


---

## 1 answers

### Answer by username_1 on 2014-08-22. Score: 3

Yes I can confirm, currently the `dateUpdated` property returns the same datetime object for every block model. It's actually the save date of the entry (`entry.dateUpdated`) that is saved to the `craft_matrixblocks` table in the DB.

Can't say if it's intended to work like this though.

> **Comments:**
> **username_0**: Thanks for confirming @username_1. If this _is_ the intended behavior, its a bit of a bummer because I have a use case (checking for recently-updated matrix blocks via a javascript JSON request) that is far more difficult, maybe even impossible, without a unique updated date time for each block. It's also inconsistent, because each block **does** have a unique `date_created` property.  
> **username_1**: @username_0 the (shared) property is probably only saved to make this work: `block.dateUpdated`. But actually that wouldn't be necessary because you could also do: `block.owner.dateUpdated`.  
> **username_1**: I did a [feature request](https://plus.google.com/101325980081569498457/posts/YUcDZu9sdkz) for this on g+.  

---

