Jump to content

Unexpected token < in JSON w paginacji na profilach


aXen
 Share

Recommended Posts

Hej,

Mam problem z paginacją w profilach użytkowników.

 

Tworzę sobie aplikację gdzie:

  1. Dodaję Profile o nazwie VacationProfile.php w Extensions.
    image.png.ad880bdd7bf674d00d16b50ce3920ce4.png
    Jego zawartość nie została zmieniona, oprócz funkcji render na:
    	/**
    	 * Display
    	 *
    	 * @return	string
    	 */
    	public function render()
    	{
    		$table = new \IPS\Helpers\Table\Content('IPS\axenvacation\Vacation', $this->member->url()->setQueryString(array('tab' => 'node_axenvacation_Profile')));
    		$table->rowsTemplate = array(\IPS\Theme::i()->getTemplate('profile', 'axenvacation', 'front'), 'vacationRow');
    		$table->where[] = array('axenvacation_members.axenvacation_member_id=?', $this->member->member_id);
    		$table->limit = 2;
    		$table->noModerate = TRUE;
    
    		return (string) $table;
    	}
  2. Stworzyłem plik vacationRow.phtml z zawartością:
    <ips:template parameters="$table, $headers, $rows" />
    {{foreach $rows as $row}}
    test
    {{endforeach}}

    Test tutaj jest wprowadzony, aby przetestować czy paginacja działa.

  3. Zawartość klasy IPS\axenvacation\Vacation:

    <?php
    
    namespace IPS\axenvacation;
    
    /* To prevent PHP errors (extending class does not exist) revealing path */
    
    if (!\defined('\IPS\SUITE_UNIQUE_KEY')) {
      header((isset($_SERVER['SERVER_PROTOCOL']) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0') . ' 403 Forbidden');
      exit;
    }
    
    class _Vacation extends \IPS\Content\Item
    {
      /**
       * @brief	Database Table
       */
      public static $databaseTable = 'axenvacation_members';
    
      /**
       * @brief	Application
       */
      public static $application = 'axenvacation';
    
      /**
       * @brief	Database Prefix
       */
      public static $databasePrefix = 'axenvacation_';
    
      /**
       * @brief	Database Column Map
       */
      public static $databaseColumnMap = array(
        'date'      => 'start'
      );
    }

     

Efekt jest taki jak chciałem:
image.png.cb4b04525e44a0574473810132d678b8.png

 

Lecz przy zmianie strony nic się nie dzieje, a konsola w przeglądarce wali mi błędem:

Ajax request failed (parsererror): SyntaxError: Unexpected token < in JSON at position 0

image.png.56332a561912249408db36ecc79a5060.png

 

Czy coś robię nie tak? Coś jeszcze jest wymagane do paginacji tabelki \IPS\Helpers\Table\Content?

Link to comment
Share on other sites

Tylko taki błąd ajax. Błąd pojawia się tylko w trybie dev, ale po jego wyłączeniu i przejściu na kolejną stronę w paginacji profil mi skacze do takiego widoku:
image.thumb.png.faf7e5209655b335b453eed0c5a2f682.png

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.