Remember me? forgot password | register

SilverStripe Forum

10688 Posts in 2795 Topics by 1518 members

Jump to:

Site Builders

If this is your first visit, you will need to register before you can post. However, you can browse all messages below.

Community » SilverStripe Forum » Site Builders » like tutorial 5, but with members
Page: 1 go to end Reply
Author Topic: like tutorial 5, but with members 306 views
  • lekoala
    avatar
    Community Member
    15 posts

    like tutorial 5, but with members Link to this post

    Hi all,

    I'm trying to do something similar to tutorial 5 but with members instead of students. The idea is to have an activitypage to which members can subscribe.

    The code so far looks like this :

    ***

    class ActivityPage extends Page {
       static $db = array(
          'Date' => 'Date',
          'HeureDebut' => 'Time',
          'HeureFin' => 'Time',
          'Lieu' => 'HTMLText',
          'Titre' => 'Varchar'
       );
       static $has_one = array(
          'Photo' => 'Image'   
    );
    static $has_many = array(
    'Participants' => 'Member'
    );
    static $defaults = array(
          'ShowInMenus' => false
       );

    function getCMSFields() {
    $fields = parent::getCMSFields();
       
    $fields->addFieldToTab("Root.Content.Images", new ImageField('Photo'));
       
        $fields->addFieldToTab( 'Root.Content.Main', new CalendarDateField( 'Date' ) );
    $fields->addFieldToTab( 'Root.Content.Main', new TimeField( 'HeureDebut' ) );
    $fields->addFieldToTab( 'Root.Content.Main', new TimeField( 'HeureFin' ) );
        $fields->addFieldToTab( 'Root.Content.Main', new TextField( 'Lieu' ) );
    $fields->addFieldToTab( 'Root.Content.Main', new TextField( 'Titre' ) );
       
        $tablefield = new HasManyComplexTableField(
    $this,
    'Participants',
    'Member',
    array(
        'FirstName' => 'PrĂ©nom',
        'Surname' => 'Nom',
    ),
    'getCMSFields_forPopup'
    );
    $tablefield->setAddTitle( 'Member' );

    $fields->addFieldToTab( 'Root.Content.Participants', $tablefield );
       
    return $fields;
    }

    }

    ***

    which is basically the same code that the one in the tutorial except that I have changed Students to Participants (the name) and Student to Member (the type)

    But... it crashes.

    FATAL ERROR: Missing argument 1 for DataObject::get(), called in E:\www\xemecercle\silverstripe\sapphire\core\ViewableData.php on line 99 and defined
    At line 1431 in E:\www\xemecercle\silverstripe\sapphire\core\model\DataObject.php

    Which argument for DataObject is missing ? Any hint is welcome!

    306 views
go to top Reply

Currently Online:

g, motoservo

Welcome to our latest member: lorem