我正在OctoberCms中构建一个作业应用程序插件。现在前端只有2个项目中的1个。我想要显示所有项目。但现在我只能通过在组件属性的后端输入id来选择1
我必须在我的代码中的某处添加此$properties = $this->getProperties();
,但我无法弄清楚在哪里。有什么建议吗?
php namespace Hessel\Vacatures\Components; use Cms\Classes\ComponentBase; use Hessel\Vacatures\Models\Vacature as VacatureModel; class vacature extends ComponentBase { public function componentDetails() { return [ 'name' => 'Vacature Component', 'description' => 'No description provided yet...' ]; } public function defineProperties() { return [ 'vacatureId' => [ 'title' => 'Vacature' ], ]; } public function getVacatureIdOptions() { return VacatureModel::select('id', 'title')->orderBy('title')->get()->lists('title', 'id'); } public function onRender() { $this->vacature = $this->page['vacature'] = VacatureModel::where('id', '=', $this -> property('vacatureId')) -> first(); } }
答案 0 :(得分:0)
在你使用的c()
- >最后的第一个(>)。如果您将其更改为 - > get()这将返回一个Object,其中包含每行的所有值。你应该循环通过它来打印它们。
onRender()
public function onRender()
{
$object = VacatureModel::where('id', '=', $this -> property('vacatureId')) -> get();
}