diff options
author | Marvin Borner | 2018-08-24 16:19:39 +0200 |
---|---|---|
committer | Marvin Borner | 2018-08-24 16:19:39 +0200 |
commit | adf07b310bddf751584db0717b8f501b8acda32a (patch) | |
tree | c0938cb059337e62c69a5a727dee4808e16cd2bc | |
parent | 1362cdab92ffd8b8f375f42886e34a6674f2b5af (diff) |
Added models for post types
-rw-r--r-- | api/Posts/Models/MediaPost.php (renamed from api/Posts/Models/PostText.php) | 11 | ||||
-rw-r--r-- | api/Posts/Models/Post.php | 41 | ||||
-rw-r--r-- | api/Posts/Models/PostType.php | 19 | ||||
-rw-r--r-- | api/Posts/Models/TextPost.php (renamed from api/Posts/Models/PostImage.php) | 11 | ||||
-rw-r--r-- | api/Posts/routes.php | 2 | ||||
-rw-r--r-- | api/Users/Models/User.php | 5 |
6 files changed, 84 insertions, 5 deletions
diff --git a/api/Posts/Models/PostText.php b/api/Posts/Models/MediaPost.php index 2e4a4bb..e6f1629 100644 --- a/api/Posts/Models/PostText.php +++ b/api/Posts/Models/MediaPost.php @@ -6,9 +6,11 @@ use Laravel\Passport\HasApiTokens; use Illuminate\Notifications\Notifiable; use Illuminate\Database\Eloquent\Model; -class PostText extends Model +class MediaPost extends Model { use HasApiTokens, Notifiable; + + protected $table = "media_posts"; /** * The attributes that are mass assignable. @@ -16,6 +18,11 @@ class PostText extends Model * @var array */ protected $fillable = [ - 'user_id', 'text' + 'description', 'media_path' ]; + + public function post() + { + return $this->belongsTo('Api\Posts\Models\Post'); + } } diff --git a/api/Posts/Models/Post.php b/api/Posts/Models/Post.php new file mode 100644 index 0000000..321c38c --- /dev/null +++ b/api/Posts/Models/Post.php @@ -0,0 +1,41 @@ +<?php + +namespace Api\Posts\Models; + +use Laravel\Passport\HasApiTokens; +use Illuminate\Notifications\Notifiable; +use Illuminate\Database\Eloquent\Model; + +class Post extends Model +{ + use HasApiTokens, Notifiable; + + /** + * The attributes that are mass assignable. + * + * @var array + */ + protected $fillable = [ + 'post_types_id', 'user_id' + ]; + + public function user() + { + return $this->belongsTo('Api\Users\Models\User'); + } + + public function post_type() + { + return $this->belongsTo('Api\Posts\Models\Post'); + } + + public function media_post() + { + return $this->hasOne('Api\Posts\Models\MediaPost'); + } + + public function text_post() + { + return $this->hasOne('Api\Posts\Models\TextPost'); + } +} diff --git a/api/Posts/Models/PostType.php b/api/Posts/Models/PostType.php new file mode 100644 index 0000000..455dd9e --- /dev/null +++ b/api/Posts/Models/PostType.php @@ -0,0 +1,19 @@ +<?php + +namespace Api\Posts\Models; + +use Laravel\Passport\HasApiTokens; +use Illuminate\Notifications\Notifiable; +use Illuminate\Database\Eloquent\Model; + +class TextPost extends Model +{ + use HasApiTokens, Notifiable; + + protected $table = "post_types"; + + public function posts() + { + return $this->hasMany('Api\Posts\Models\Post'); + } +} diff --git a/api/Posts/Models/PostImage.php b/api/Posts/Models/TextPost.php index 637d1ec..30593a1 100644 --- a/api/Posts/Models/PostImage.php +++ b/api/Posts/Models/TextPost.php @@ -6,9 +6,11 @@ use Laravel\Passport\HasApiTokens; use Illuminate\Notifications\Notifiable; use Illuminate\Database\Eloquent\Model; -class PostImage extends Model +class TextPost extends Model { use HasApiTokens, Notifiable; + + protected $table = "text_posts"; /** * The attributes that are mass assignable. @@ -16,6 +18,11 @@ class PostImage extends Model * @var array */ protected $fillable = [ - 'user_id', 'description', 'image_path', + 'description', 'text' ]; + + public function post() + { + return $this->belongsTo('Api\Posts\Models\Post'); + } } diff --git a/api/Posts/routes.php b/api/Posts/routes.php index c34c120..c3b90e4 100644 --- a/api/Posts/routes.php +++ b/api/Posts/routes.php @@ -1,5 +1,5 @@ <?php - +// type [text, media] as get parameter (/posts?type=media,text) $router->get('/posts', 'PostController@getAll'); $router->get('/posts/{id}', 'PostController@getById'); $router->post('/posts', 'PostController@create'); diff --git a/api/Users/Models/User.php b/api/Users/Models/User.php index 9e5b0b7..e568608 100644 --- a/api/Users/Models/User.php +++ b/api/Users/Models/User.php @@ -27,4 +27,9 @@ class User extends Authenticatable protected $hidden = [ 'password', 'remember_token', ]; + + public function posts() + { + return $this->hasMany('Api\Posts\Models\Post'); + } } |