githubjeka/rest-yii2

Yii 2 Rest Api Template

Installs: 1 822

Dependents: 0

Suggesters: 0

Security: 0

Stars: 157

Watchers: 26

Forks: 74

Open Issues: 8

Type:project

dev-master 2017-12-23 10:34 UTC

This package is auto-updated.

Last update: 2022-01-19 11:31:48 UTC


README

Build Status

Demo Server

INSTALLATION

Install via Composer

If you do not have Composer, you may install it by following the instructions at getcomposer.org.

You can then install the application using the following commands:

composer global require "fxp/composer-asset-plugin:~1.0.0"
composer create-project --prefer-dist -s dev "githubjeka/rest-yii2" .

GETTING STARTED

After you install the application, you have to conduct the following steps to initialize the installed application. You only need to do these once for all.

  • Run command php init --env=Development to initialize the application with a specific environment.
  • Create a new database and adjust the components['db'] configuration in common/config/main-local.php accordingly.
  • Apply migrations with console command php yii migrate. This will create tables needed for the application to work.
  • Set document roots of your Web server:

for rest /path/to/yii-application/rest/web/ and using the URL http://localhost/ for backend /path/to/yii-application/backend/web/ and using the URL http://backend-localhost/

Use demo/demo to login into the application on http://localhost/v1/user/login. See /rest/config/main.php for more info by URL

URL RULE

See rest/config/main.php

API available:

// version 1
OPTIONS /index.php?r=v1/user/login
POST /index.php?r=v1/user/login

OPTIONS /index.php?r=v1/posts
GET /index.php?r=v1/posts
GET /index.php?r=v1/posts/ID
POST /index.php?r=v1/posts
PUT /index.php?r=v1/posts/ID
DELETE /index.php?r=v1/posts/ID

OPTIONS /index.php?r=v1/comments
GET /index.php?r=v1/comments
GET /index.php?r=v1/comments/ID
POST /index.php?r=v1/comments
PUT /index.php?r=v1/comments/ID
DELETE /index.php?r=v1/comments/ID

//version 2
OPTIONS /index.php?r=v2/user/login
POST /index.php?r=v2/user/login

You can hide index.php from URL. For that see server.md

ADDITIONALLY

See client on AngularJS