Прочие движки | Очередное г.cms ))
Тема закрыта by
mir007
Причина: оалалалалалал
Причина: оалалалалалал
Писать cms? (Открытое голосование)
Нет (5 чел. - 38 %)
Да (5 чел. - 38 %)
Мне всё ровно (3 чел. - 23 %)
Вот немного ознакомился с фреймворком http://laravel.RU и решил написать свою cms на данном фреймворке.
Лучший способ научится - это научить кого-то так как надо изучать все в идеале.
Так вот немного о фреймворке.
Laravel — бесплатный веб-
фреймворк с открытым кодом,
предназначенный для разработки с
использованием архитектурной
модели MVC (англ. Model View
Controller — модель-представление-
контроллер).
Простые Get , Post Маршруты Get :
Route :: get('/' , function()
{
return 'Hello World' ;
});
Перейдем по адресу sait.ru
и выведит Hello Word
Сохранение данных в БД:
$user = new User ; //Вызываем модель
$user -> name = 'John' ;
$user -> save();
так же есть авто заполение
protected $fillable = [ 'first_name' , 'last_name' , 'email' ];
Это только самые простые примеры))
Вообще очень много разных плюх.
Читаем документацию
https://laravel.ru/docs/v5/
Да и ко всему этому есть composer, миграции и т.д
И требования php 5.6
Ну конечно коментируем нужно ли ещё одна cms ))
Лучший способ научится - это научить кого-то так как надо изучать все в идеале.
Так вот немного о фреймворке.
Laravel — бесплатный веб-
фреймворк с открытым кодом,
предназначенный для разработки с
использованием архитектурной
модели MVC (англ. Model View
Controller — модель-представление-
контроллер).
Простые Get , Post Маршруты Get :
Route :: get('/' , function()
{
return 'Hello World' ;
});
Перейдем по адресу sait.ru
и выведит Hello Word
Сохранение данных в БД:
$user = new User ; //Вызываем модель
$user -> name = 'John' ;
$user -> save();
так же есть авто заполение
protected $fillable = [ 'first_name' , 'last_name' , 'email' ];
Это только самые простые примеры))
Вообще очень много разных плюх.
Читаем документацию
https://laravel.ru/docs/v5/
Да и ко всему этому есть composer, миграции и т.д
И требования php 5.6
Ну конечно коментируем нужно ли ещё одна cms ))
Где ?
KoenigSEGG (24.09.2015 в 14:33)
Где ?
Где ?
Читайте внимательно
mir007, нубский код cms!
262110938 (24.09.2015 в 14:47)
mir007, нубский код cms!
mir007, нубский код cms!
Кто сказал что я примеры cms дал?
Вот вы точно нуб))
262110938 (24.09.2015 в 14:47)
mir007, нубский код cms!
mir007, нубский код cms!
Ты под чем, лалка? Покажи для начала свой гкод, после начинай что-то звиздеть.
$user = new User ; //Вызываем модель $user -> name = 'John' ; $user -> save();
а вот этим я заинтересовался
а вот этим я заинтересовался
Kaito, кину когда одного парня , на данном фреймворк для примера какой может быть код. но там много чего ещё не хватает.
Для начало создадим таблицу
для комментариев. Для этого
используем миграции
php artisan make:migration create_table_comments
И редакируем созданный
файл
<?php
use Illuminate\Database\Schema
\Blueprint;
use Illuminate\Database
\Migrations\Migration;
class CreateTableComments
extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('comments',
function (Blueprint $table) {
$table->increments('id');
$table->integer
('article_id'); //здесь будет
хранится id статьи
$table->text('content');
$table->string('author');
$table->string('email');
$table->boolean('public')-
>default(0);
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('comments');
}
}
И запускаем миграцию
php artisan migrate
Ну вот у нубов это будут первые сложности и с использованием консоли.
для комментариев. Для этого
используем миграции
php artisan make:migration create_table_comments
И редакируем созданный
файл
<?php
use Illuminate\Database\Schema
\Blueprint;
use Illuminate\Database
\Migrations\Migration;
class CreateTableComments
extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('comments',
function (Blueprint $table) {
$table->increments('id');
$table->integer
('article_id'); //здесь будет
хранится id статьи
$table->text('content');
$table->string('author');
$table->string('email');
$table->boolean('public')-
>default(0);
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('comments');
}
}
И запускаем миграцию
php artisan migrate
Ну вот у нубов это будут первые сложности и с использованием консоли.
Добавим новый маршрут,
который позволит нам получать
значения полей комментария
Route::post('/show/{id}','CommentsController@save');
У нас уже есть похожий
маршрут для GET запроса,
который отображает статью и
есть контролер FrontController,
который мог бы заниматься и
сохранением комментариев. Но
я предпочел разделить роли
контролеров, что бы легче было
ориентироваться в будущем.
Создадим контролер
php artisan make:controller CommentsController --plain
И нам понадобится модель.
Все интересное будет
происходить именно в модели.
Создаем модель.
php artisan make:model Comments
Отредактируем модель
<?php
namespace App;
use Illuminate\Database\Eloquent
\Model;
class Comments extends Model
{
protected $table="comments";
protected $fillable=
['author','email','content','article_id'];
}
Теперь мы можем озадачится
сохранением комментария в
базу. Добавим метод save, в
контролер CommentsController
<?php
namespace App\Http\Controllers;
use App\Comments;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers
\Controller;
class CommentsController
extends Controller
{
public function save(Request
$request, $id)
{
$all=$request->all();//
Получаем все данные из формы в
массив
$all['article_id']=$id;//
Добавляем в массив id статьи
Comments::create($all);//
Сохраняем в базу
return back()->with
('message','Спасибо за
комментарий. После проверки он
будет опубликован'); //редирект
обратно к форме с сообщением
}
}
Всего три строчки и
комментарий сохранен.
Удивительно правда? Но чего-то
не хватает? Конечно же —
валидации! Добавляем, благо
это не сложно. Для этого
используется встроенный метод
базового класса Controller —
validate
<?php
namespace App\Http\Controllers;
use App\Comments;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers
\Controller;
class CommentsController
extends Controller
{
public function save(Request
$request, $id)
{
$this->validate($request, [
'author' => 'required|max:100|
min:5',
'email' => 'required|email',
'content'=>'required|min:5|
max:400'
]);
$all=$request->all();
$all['article_id']=$id;
Comments::create($all);
return back()->with
('message','Спасибо за
комментарий. После проверки он
будет опубликован');
}
}
который позволит нам получать
значения полей комментария
Route::post('/show/{id}','CommentsController@save');
У нас уже есть похожий
маршрут для GET запроса,
который отображает статью и
есть контролер FrontController,
который мог бы заниматься и
сохранением комментариев. Но
я предпочел разделить роли
контролеров, что бы легче было
ориентироваться в будущем.
Создадим контролер
php artisan make:controller CommentsController --plain
И нам понадобится модель.
Все интересное будет
происходить именно в модели.
Создаем модель.
php artisan make:model Comments
Отредактируем модель
<?php
namespace App;
use Illuminate\Database\Eloquent
\Model;
class Comments extends Model
{
protected $table="comments";
protected $fillable=
['author','email','content','article_id'];
}
Теперь мы можем озадачится
сохранением комментария в
базу. Добавим метод save, в
контролер CommentsController
<?php
namespace App\Http\Controllers;
use App\Comments;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers
\Controller;
class CommentsController
extends Controller
{
public function save(Request
$request, $id)
{
$all=$request->all();//
Получаем все данные из формы в
массив
$all['article_id']=$id;//
Добавляем в массив id статьи
Comments::create($all);//
Сохраняем в базу
return back()->with
('message','Спасибо за
комментарий. После проверки он
будет опубликован'); //редирект
обратно к форме с сообщением
}
}
Всего три строчки и
комментарий сохранен.
Удивительно правда? Но чего-то
не хватает? Конечно же —
валидации! Добавляем, благо
это не сложно. Для этого
используется встроенный метод
базового класса Controller —
validate
<?php
namespace App\Http\Controllers;
use App\Comments;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers
\Controller;
class CommentsController
extends Controller
{
public function save(Request
$request, $id)
{
$this->validate($request, [
'author' => 'required|max:100|
min:5',
'email' => 'required|email',
'content'=>'required|min:5|
max:400'
]);
$all=$request->all();
$all['article_id']=$id;
Comments::create($all);
return back()->with
('message','Спасибо за
комментарий. После проверки он
будет опубликован');
}
}