title: In Silverstripe 4, a standard "Add" button of a GridField does nothing
body: <p>I'm trying to use a GridField component for the first time.
  I've added an 'Add' button using GridFieldConfig_RecordEditor as followings:</p>
  
  <pre><code>class AdvertisersPage extends Page
  {
      //...
  
      public function getCMSFields()
      {
          $fields = parent::getCMSFields();
  
          $advertiserAccounts = AdvertiserAccount::get();
  
          $fields-&gt;addFieldToTab('Root.Advertisers',
              $gridField = new GridField(
                  'Advertisers',
                  'All advertisers',
                  $this-&gt;Advertisers(),
                  GridFieldConfig_RecordEditor::create()
              )
          );
  
          return $fields;
      }
  }
  </code></pre>
  
  <p>But the button doesn't do anything besides changing the URL in the browser from</p>
  
  <blockquote>
    <p>admin/pages/edit/show/7</p>
  </blockquote>
  
  <p>to</p>
  
  <blockquote>
    <p>admin/pages/edit/EditForm/7/field/Advertisers/item/new</p>
  </blockquote>
  
  <p>Here is the related DataObject class:</p>
  
  <pre><code>class AdvertiserAccount extends DataObject
  {
      //...
  
      private static $has_one = [
          'AdvertisersPage' =&gt; AdvertisersPage::class,
      ];
  
      public function getCMSFields()
      {
          $fields = FieldList::create(
              TextField::create('contactNumber'),
              TextField::create('nickname')
          );
  
          return $fields;
      }
  }
  </code></pre>
  
  <p>I need your advice on what should I look at to fix the issue.</p>