-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathArticle.php
85 lines (70 loc) · 1.52 KB
/
Article.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<?php
namespace App\Models;
use Jenssegers\Mongodb\Helpers\EloquentBuilder;
use OfflineAgency\MongoAutoSync\Http\Models\MDModel;
/**
*
* Plain Fields
*
* @property string $id
* @property array $title
* @property array $excerpt
* @property array $content
* @property string $autoincrement_id
* @property string $publication_date
* @property array $slug
*
**/
/**
*
* Relationship
*
* @property MiniCategory $categories
*
**/
/**
* Article
*
* @mixin EloquentBuilder
*/
class Article extends MDModel
{
protected $collection = 'articles';
protected $items = [
'title' => [
'is-ml' => true,
'is-editable' => true,
],
'excerpt' => [
'is-ml' => true,
],
'content' => [
'is-ml' => true,
],
'autoincrement_id' => [
'is-editable' => false,
],
'publication_date' => [
'is-md' => true,
],
'slug' => [
'is-ml' => true,
],
'author' => [],
'media_path' => [],
];
protected $mongoRelation = array(
'categories' => array(
'type' => 'EmbedsMany',
'mode' => 'classic',
'model' => 'App\Models\MiniCategory',
'modelTarget' => 'App\Models\Category',
'methodOnTarget' => 'articles',
'modelOnTarget' => 'App\Models\MiniArticle',
),
);
public function categories()
{
return $this->embedsMany('App\Models\MiniCategory');
}
}