Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

Unexpected token < in JSON w paginacji na profilach


aXen

Rekomendowane odpowiedzi

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?

See me on GitHub or aXenDev.net!

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.