1 Star 0 Fork 1

凡尘爵士 / study_laravel

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
学习资料.txt 7.70 KB
AI 代码解读
一键复制 编辑 原始数据 按行查看 历史
凡尘爵士 提交于 2015-09-29 16:01 . 9.29学习成果
陶朋友的GIT
http://192.168.6.112/
//数据库
192.168.6.108:3306
taopengyou
YXYUm8Z5NX2G67AQ
//一些GIT的使用操作
//第一次使用git
git config --global user.name "chendejue"
git config --global user.email "659915956@qq.com"
ssh-keygen -t rsa -C "6599@15956@qq.com" //ssh-keygen -t rsa -C "6599@15956@qq.com" -f ~/.ssh/chendejue@163.com
git init //创建一个本地的版本库
git add <file> //添加一个文件或者多个文件
git commit -m "wrote a readme file" //提交文件到仓库
git remote add origin git@github.com:chendejue/learngit.git //在本地添加一个远程的仓库 (目前的phpstorm里面执行不了)
git pull --rebase origin master //初始化从远程拉取和合并到本地 (目前的phpstorm里面执行不了)
git push -u origin master //把本地仓库的文件推送到远程仓库
//如果是多用户使用和操作的时候
~/.ssh/config //单用户的时候不存在,需要手动创建
//config的文件配置如下
Host 192.168.6.112
HostName 192.168.6.112
User chendejue
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Host git.oschina.net
HostName git.oschina.net
User 凡尘爵士
PreferredAuthentications publickey
IdentityFile ~/.ssh/chendejue@163.com
//如果有多个就重复上面的操作
首先,可以试图用git push origin branch-name推送自己的修改;
如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
如果合并有冲突,则解决冲突,并在本地提交;
没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!
如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name。
查看远程库信息,使用git remote -v;
本地新建的分支如果不推送到远程,对其他人就是不可见的;
从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;
在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;
建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;
从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。
//成功完成的所有流程(远程的仓库为空的)
composer create-project laravel/laravel lar.cn 5.0.22 //创建项目
cd lar.cn //进入项目目录
git init //初始git的项目
git config user.name "凡尘爵士" //设置当前项目的提交者的用户名
git config user.email "chendejue@163.com" //设置当前项目的提交者邮箱
vim .gitignore //编辑不需要提交的文件
git add -A //一次添加所有的当前目录内的所有文件
git commit -m "创建laravel的学习项目" //提交项目到当前的本地的GIT仓库
git remote add origin git@git.oschina.net:bobby1017/study_laravel.git //在本地仓库中添加远程分支仓库
git push -u origin master //合并远程和本地仓库
laravel的一些相关操作
//安装composer
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer //实现全局访问,如果没有权限,可以申请提权
//安装laravel
composer create-project laravel/laravel learnlaravel5 5.0.22 //创建5.0版本的laravel
然后将网站根目录配置为 learnlaravel5/public
可以把 的第 29 行 'url' => 'http://localhost', 配置成你的子目录地址
//导入后的项目需要进入项目根目录重新生产appkey
.env //必须存在本文件
.env.sample //存在样板文件
生成appkey
php artisan key:generate
//laravel文件
php artisan migrate //迁移数据,相关数据路径在 /database/migrations
//创建model //生成的model分别在/app/Article.php 以及/database/migrations/2015_09_25_094223_create_articles_table.php
php artisan make:model Article
//插入数据
composer dump-autoload
php artisan db:seed
//增加路由组(app/http/routes.php)
Route::group(['prefix' => 'admin', 'namespace' => 'Admin'], function()
{
Route::get('/', 'AdminHomeController@index');
});
1. `'prefix' => 'admin'` 表示这个路由组的 url 前缀是 /admin,也就是说中间那一行代码 `Route::get('/'` 对应的链接不是 http://lar.cn/ 而是 http://lar.cn/admin ,如果这段代码是 `Route::get('abc'` 的话,那么 URL 就应该是 http://lar.cn/admin/abc 。
2. `'namespace' => 'Admin'` 表示下面的 `AdminHomeController@index` 不是在 `\App\Http\Controllers\AdminHomeController@index` 而是在 `\App\Http\Controllers\Admin\AdminHomeController@index`,加上了一个命名空间的前缀。
//建立相应的控制器(/app/Http/Controllers/Admin/AdminHomeController.php)
php artisan make:controller Admin/AdminHomeController
//使用命名空间 在 `class AdminHomeController extends Controller {` 上面增加一行:
use App\Page;
//视图文件在resources/views/下面
//增加路由(资源控制器)
Route::resource('pages', 'PagesController');
//Laravel的Router,Views,Controllers这三个的工作流程
//1. 在routes.php中注册路由 ---> 2. 创建对于的控制器 ---> 3. 在控制器中得对于方法加载视图
//1. Route::get('/','ArticleController@index');
//2. php artisan make:controller ArticleController [--plain//此参数代表生成一个简单的controller]
// 3. public function index()
{
return view('articles.lists');
}
//用的是blade模板 。简单的用法
@yield() //设置被调用的地方
@extends() //引入其他的模板
@if() @else @endif //判断
@unless() @endunless
@foreach() @endforeach
@empty
@section() @endsection //使用上面被设置调用的地方
//模板变量赋值
->with("key","变量值");
,["key"=>"变量值"]
,compact("变量1");
//变量获取
<?php echo $变量;?>
{{$变量}} //转义变量的HTML实体字符
{!!$变量!!} //不转义变量的HTML实体字符
//加载子视图
@include('view.name')
//传递数据到子视图
@include('view.name', ['some' => 'data'])
//操作数据库
php artisan make:migration create_articles_table --create='articles' //创建数据库
php artisan migrate:rollback //删除数据库
//操作model
php artisan make:model Article
//find查找数据库尽量使用findOrFail避免找不到数据出错!
//地址变量的传递和生成
1./articles/{{ $article->id }}
2.action()这个方法第一个参数表明要加载ArticleController的show()方法,跟routes一样,第二个参数用数组传入相应地参数[$article->id]
例子:{{ action('ArticleController@show',[$article->id]) }}
3.url()方法第一个参数传入url路径,第二个参数直接传入变量
例子:{{ url('articles/',$article->id) }}
//获取数据需要的注意点
use Illuminate\Http\Request;
//如果使用这个的获取方式是:
Input::get('title');
use Request;
//如果使用这个的获取方式是:
Request::all();
//创建request验证
php artisan make:request StoreArticleRequest
//tinker工具
php artisan tinker
声明Eloquent的关系
Articles和Tags是多对多的关系,所以我们需要在Article.php中声明下面的关系:
public function tags()
{
return $this->belongsToMany('App\Tag');
}
在Tag.php,也同样:
public function articles()
{
return $this->belongsToMany('App\Article');
}
我们使用$this->belongsToMany()来表明Eloquent的关系,这里需要注意的是如果你的外键并不是article_id和tag_id,你需要在第三个参数进行设置,写成类似下面这样:
public function articles()
{
return $this->belongsToMany('App\Article','conversation_id');
}
OK,这样,我们的多对多关系就声明完毕了。
PHP
1
https://gitee.com/bobby1017/study_laravel.git
git@gitee.com:bobby1017/study_laravel.git
bobby1017
study_laravel
study_laravel
master

搜索帮助