Puncte:1

Cum să restabiliți machetele de înlocuire a constructorului de layout din vechiul instantaneu DB?

drapel ru

După actualizarea de la Drupal v9.1.7 la v9.2.0, pe o mulțime de noduri, machetele personalizate de înlocuire a constructorului de layout au fost resetate la aspectul implicit, rezultând o pierdere masivă de date. Pentru a înrăutăți lucrurile, asta s-a întâmplat doar pe live și nu pe scenă și a fost observat doar câteva zile mai târziu. Nu știu ce a cauzat problema, clientul este destul de supărat și trebuie să restabilesc rapid și selectiv machetele de suprascriere dintr-un instantaneu DB cu o seară înainte de actualizare (și să las restul datelor neatins).

Pana acum stiu doua lucruri:

  • Toate nodurile afectate au a nod.schimbat marca temporală care se potrivește cu momentul implementării actualizării.
  • Pe toate nodurile afectate node__layout_builder_layout a fost decupat într-o singură secțiune (la fel ca aspectul implicit, fără înlocuire)
  • Pe toate nodurile afectate se pierde doar ultima revizuire, fără a genera un nou ID de revizuire.
  • Aspectele de anulare constau, de obicei, în personalizate, nereutilizabile block_content blocuri. Toate blocurile par să mai existe în DB.

As vrea sa stiu:

  1. Cum pot verifica dacă un nod are un aspect de suprascriere sau folosește aspectul implicit al constructorului de aspect (dacă este posibil cu o interogare SQL simplă, fără PHP)
  2. Ce altceva trebuie să refac, în afară de node__layout_builder_layout tabel (presupunând că blocurile de conținut personalizate utilizate de layout-urile de înlocuire par să mai existe) pentru a restabili aspectul de înlocuire a unui nod
  3. Pot să folosesc SQL cu siguranță unde a <> b sau SQL unde a = b cu A și b fiind conținutul blob al node__layout_builder_layout.layout_builder__layout_section ?
Puncte:0
drapel ru

Răspunzând la întrebarea mea 2:

(DACĂ blocurile de conținut personalizate la care se face referire etc. mai există în DB...)
Restaurarea node__layout_builder__layout tabelul restaurează layout-urile de înlocuire, nu sunt necesare alte tabele.

Puncte:0
drapel cn

Pot să răspund rapid la prima întrebare. Există un tabel numit node__layout_builder__layout care conține doar nodurile care au suprascris aspectul implicit pentru acel nod. Deci, dacă creați 2 noduri cu ID-urile 1 și 2 și utilizați aspectul implicit pentru nodul 1, dar înlocuiți aspectul pentru nodul 2, în node__layout_builder__layout veți vedea doar nodul 2. Astfel, puteți obține toate nodurile și le puteți discrimina pe cele găsite în acel tabel . Asigurați-vă că verificați câmpul delta pentru a verifica diferențele dintre revizuiri.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.