I wrote a module that comes with a default_view (a block view). The corresponding block is not automatically listed inside the blocks db-table, even after a cache clearing, but it is shown after I visit admin/build/block. My problem is that I have a hook_update_N(), which is going to update the blocks table (the configuration of this specific block); if it's not there, it can't be updated.

When I use _block_rehash('MYTHEME') the table is updated, not only for MYTHEME (ZEN-subtheme) but also for the Minelli theme. Is there another way of "updating" the blocks-table? What exactly is going on, when admin/build/block is visited?

Edit: I just noticed that Pro Drupal Devel (2. Ed.) states, at page 218, to use a Insert INTO query and do it "by hand." I think thats what I'm going to do now.

Use INSERT INTO. I've spent hours and hours using block_rehash and variants to no effect.

Your Answer


By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.