title: Wrong 'View live' url in Wagtail admin message after page creation when using id as slug
body: <p>I am using a page model 'EventPage', which shall have a slug based on the id of the page. To achieve this, I have modified the <code>full_clean</code> method like this (similar to <a href="https://stackoverflow.com/questions/43662817/modify-slug-for-every-page-of-model-on-wagtail">this question</a>):</p>
  <pre><code>class EventPage(Page):
      ...
      
      def full_clean(self, *args, **kwargs):
          super().full_clean(*args, **kwargs)
  
          # set slug to id, if already existing
          if self.id is not None:
              self.slug = str(self.id)
  </code></pre>
  <p>This seems to work fine in principle. However, after the page is published,the Wagtail admin/pages view shows a message box at the top ('Page ... created and published') with a <code>View live</code> button that links to the wrong url (i.e. using the default slug created from the page title).</p>
  <p>In the list of pages below that, the just created page's own <code>View live</code> and <code>Add child page</code> links show the correct page url using the page id. It is just the message box's <code>View live</code> url at the top that needs to be corrected. Here's a screenshot:</p>
  <p><a href="https://i.stack.imgur.com/0xHD3.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/0xHD3.png" alt="enter image description here" /></a></p>
  <p>How can I get the correct link in the message box at the top as well?</p>
  <p>In case it matters, I am currently using Wagtail 2.9, Django 2.2.9 and Python 3.6.
  I guess my problem has something to do with the fact that the page id is not known until the page is saved for the first time, and the <code>View live</code> link in the message box somehow uses an initial page.url which is overridden later on.
  Any ideas how to solve this?</p>