2017年9月11日 星期一

[laravel4課程筆記] laravel4 - 手把手建立登入與欄位驗證

以下摘自 udemy Laravel 4 課程

雖然 Laravel 5 有些語法已經不太一樣,但概念上很像,
主要是這堂課是免費的,想買其他英文課程前,
可以先聽看看這堂有沒有辦法吸收,
再決定要不要下手買其他的課,
畢竟現在新同學前6hr每堂課都300實在太誘人 哈哈

下面是一些簡單的摘要


  1. control table
    1. Schema::create('table_name', function($table){$table->increments('id_name')})
    2. Schema::drop();
  2. Blade
    1. Unless
      1. 排除陣列中的某個元素
    2. 注意本課程示範的
  3. show error in browser
    1. app.php change debug to true
  4. model
    1. model name 對應的 table name 會自動加上複數 ex. class nam 為 book 對應的資料庫 table為 books
    2. setFieldnameAttribute 方法在 setvalue 時會自動觸發 (ex. $model->Fieldname)
    3. 設定好 hasMany、 belongsTo等關聯就可以簡單用箭頭取得 join的資料
    4. $fillable 欄位是允許被變更的, $guarded 相反
  5. migrations
    1. migrate:make
      1. 在 up 方法中使用 schema方法設定建立table結構的方法
      2. down方法中設定 rollback 的方法
    2. 先跑 artisan migrate:install
    3. artisan migrate
      1. 執行up方法
    4. artisan migrate:rollback
      1. 在資料被玩壞的時候執行定義好的 down 方法
  6. seed
    1. seeds 資料夾中 databaseSeeder.php 使用 $this->call($SeederName) 方法註冊自訂的seeder class
    2. seeder 中在run方法設定 modelsName::Create([colName => val]); 設定想建立的資料列, 這部分可以跟 faker 套件配合
    3. 通常會在 create 資料前 trancate table 避免因為資料被玩壞造成的非預期結果
    4. artisan db::seed 可以執行 run 方法中設定好的指令
  7. auth
    1. auth::attempt(validate_array, remember_var) 第二個參數如果給true的話儘管session過期仍會記住使用者
  8. validator
    1. $validator->passes() 和 $validator->fails() 都可以用來判斷是否驗證成功
  9. 注意:
    1. 本課程使用的 form 等一些自動產生html的方法在laravel 5 中已經不是內建的功能
    2. 設定filter.php做權限轉頁相關的設定在 laravel5 都移到 middleware 去做了

沒有留言:

張貼留言