Basenotes
Well-known member
I'm following Kiers tutorial that he posted a few years back, and I'm getting this error when I get to the end of Part 10. I've looked and looked for hours but I can't work out what I'm doing wrong. (Im adapting the code for reviews so it's called Reviews/Review rather than Pad/Note)
I've got to the end of the video where it is supposed to list all the notes/reviews by a particular user, but I'm getting this error each time :
Template errors
Reviews/Entity/User.php
Reviews/Pub/Controller/Review.php (snippet)
bn_reviews_user.html
Class Extension

I've got to the end of the video where it is supposed to list all the notes/reviews by a particular user, but I'm getting this error each time :
Template errors
- Template public:bn_reviews_user: [E_USER_WARNING] Accessed unknown getter 'Reviews' on XF:User[1] (src/XF/Mvc/Entity/Entity.php:224)
Reviews/Entity/User.php
PHP:
<?php
namespace Basenotes\Reviews\Entity;
use XF\Mvc\Entity\Structure;
class User extends \XF\Entity\User
{
public static function getStructure(Structure $structure)
{
$structure = parent::getStructure($structure);
$structure->relations['Reviews'] = [
'entity' => 'Basenotes\Reviews:Review',
'type' => self::TO_MANY,
'conditions' => 'user_id',
];
return $structure;
}
}
Reviews/Pub/Controller/Review.php (snippet)
PHP:
public function actionUser()
{
if ($userId = $this->filter('user_id', 'uint')) {
$user = $this->assertRecordExists('XF:User', $userId);
}
$viewParams = [
'user' => $user ?? null,
'users' => $this->finder('XF:User'),
];
return $this->view('Basenotes\Reviews:Review\User', 'bn_reviews_user', $viewParams);
}
bn_reviews_user.html
HTML:
<xf:title>Users</xf:title>
<xf:if is="{$user}">
<h2>{$user.username}</h2>
</xf:if>
{{ dump($user) }}
{{ dump($users) }}
<ul>
<xf:foreach loop="$user.Reviews" key="$review_id" value="$review">
<li>
{$review.title} (<xf:date time="{$review.review_date}" />)
</li>
</xf:foreach>
</ul>
<ul>
<xf:foreach loop="$users" value="$u">
<li><a href="{{link('reviews/user', null, {'user_id': $u.user_id})}}">{$u.username}</a></li>
</xf:foreach>
</ul>
Class Extension
