پس از مراحل نصب و راه اندازی و تنظیمات فریم ورک لاراول
نوبت به اتصال پروژه به دیتابیس می رسد، برای این کار:
در فولدر config فایل database.php را باز کنید:
در این فایل بسته به دیتابیسی که مورد نظرتون هست می توانید تنظیمات آن را ست نمایید :
فریم ورک لاراول از دیتابیس های mysql ,pgsql,redis ,SQL Server . پشتیبانی می کند.
به عنوان مثال دیتابیسی که بنده استفاده می کنم mysql هست که در قسمت تنظیمات این دیتابیس من به صورت زیر عمل کرده ام

[php]
   'mysql' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', 'localhost'),  
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'laravelproject'),
            'username' => env('DB_USERNAME', 'root'),
            'password' => env('DB_PASSWORD', '123456789'),
            'charset' => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix' => '',
            'strict' => false,
            'engine' => null,
        ],
[/php]

این تنظیمات اولیه دیتابیس بود در بخش های بعدی با کوئری زدن و relation ها و همچنین کار با Eloquent ORM حتما آشنا خواهیم شد.
لینک زیر داکیومنت سایت اصلی در رابطه با دیتابیس هست:
Database: Getting Started

نکته:پس از تنظیم کردن اطلاعات دیتابیس خود ، در صورتی که با عدم اتصال به دیتابیس مواجه شدید. اطلاعات خود را در فایل .env نیز تنظیم کنید.


آموزش فریم ورک Yii

در پست قبلی نصب و راه اندازی پروژه در فریم ورک لاراول Laravel 

در انتهای متن ما لینک نمایش سایت را قرار دادیم


نکته۱:پس از نصب و فعال کردن فریم ورک لاراول (در سرور یا لوکال) باید روت root

اصلی سرورتون رو به فایل index.php واقع در فولدر public قرار دهید.

 

نکته۲: فولدر های storage , bootstrap/cache باید قابل نوشتن باشند (writable) ،


پس فراموش نکنید که permission (سطح دسترسی ) را در سرورتون برای این فولدر ها اعمال کنید.

 

نکته۳: برای سایر تنظیمات می توانید به فولدر config رفته و فایل app.php را مشاهده کنید.
در این قسمت می توانید تنظیمات نظیر timezone و language را تنظیم نمایید.


آموزش فریم ورک Yii

 

assign نقش به کاربر در RBAC – Yii2
برای اهدای سطح دسترسی به کاربر مثلا به هنگام ثبت نام
شما می توانید با استفاده از متد getRole نقش مد نظر خود را انتخاب و به کاربر مورد نظر assign کنید.

 

1 2 3 $auth = \Yii::$app->authManager;         $authorRole $auth->getRole('author');         $auth->assign($authorRole$user->getId());

آموزش فریم ورک Yii

در فریم ورک yii2 نسخه advanced به صورت پیش فرض مدل user وجود دارد
که در فولدر common و در قسمت models قرار داده شده است.
زمانی که شما پروژه ای را اجرا می کنید (نسخه advance ) امکاناتی نظیر لاگین , لاگ اوت ، ثبت نام و فراموشی رمز عبور به صورت پیش فرض در frontend و در siteController وجود دارد
table user در دیتابیس مرتبط با امکانات بالا در فولدر migration واقع در فولدر console قرار دارد که به شرح زیر می باشد :

db->driverName === 'mysql') {
// http://stackoverflow.com/questions/766809/whats-the-difference-between-utf8-general-ci-and-utf8-unicode-ci
$tableOptions = 'CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE=InnoDB';
}
$this->createTable('{{%user}}', [
'id' => $this->primaryKey(),
'username' => $this->string()->notNull()->unique(),
'auth_key' => $this->string(32)->notNull(),
'password_hash' => $this->string()->notNull(),
'password_reset_token' => $this->string()->unique(),
'email' => $this->string()->notNull()->unique(),
'status' => $this->smallInteger()->notNull()->defaultValue(10),
'created_at' => $this->integer()->notNull(),
'updated_at' => $this->integer()->notNull(),
], $tableOptions);
}
public function down()
{
$this->dropTable('{{%user}}');
}
}

توجه : در رابطه با migration ها در اینجا توضیح داده شده است .
در صورتی که نیاز به تغییر اطلاعات بالا داشتید می توانید آن را تغییر دهید .
برای اجرای کد بالا و پیاده سازی در دیتابیس (ایجاد جدول user) باید در cmd خود کد زیر را اجرا نمایید :

yii migrate --migrationTable=migrations


آموزش فریم ورک Yii

در این مطلب از سایت goyii.ir نحوه ی اتصال پروژه به دیتابیس را آموزش می دهیم:
برای اتصال پروژه به دیتابیس با توجه به نوع پروژه basic یا  advanced  به روش زیر عمل می کنیم

برای پروژه های basic

در مسیر :


root/config/db.php

اطلاعات دیتابیس خود را در فایب db.php وارد نمایید

return [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=tebshahr',
'username' => 'root',
'password' => '123456789',
'charset' => 'utf8',
];

در پروژه های advanded
مسیر:

root/common/config/main-local.php

اطلاعات دیتابیس خود را در فایبmain-local.php وارد نمایید

return [
'components' => [
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=bge',
'username' => 'root',
'password' => '123456789',
'charset' => 'utf8',
],
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
'viewPath' => '@common/mail',
// send all mails to a file by default. You have to set
// 'useFileTransport' to false and configure a transport
// for the mailer to send real emails.
'useFileTransport' => true,
],
],
];


آموزش فریم ورک Yii

در این مطلب از سایت goyii.ir نحوه ی اتصال پروژه به دیتابیس را آموزش می دهیم:
برای اتصال پروژه به دیتابیس با توجه به نوع پروژه basic یا  advanced  به روش زیر عمل می کنیم

برای پروژه های basic

در مسیر :


root/config/db.php

اطلاعات دیتابیس خود را در فایب db.php وارد نمایید

return [
\'class\' => \'yii\\db\\Connection\',
\'dsn\' => \'mysql:host=localhost;dbname=tebshahr\',
\'username\' => \'root\',
\'password\' => \'123456789\',
\'charset\' => \'utf8\',
];

در پروژه های advanded
مسیر:

root/common/config/main-local.php

اطلاعات دیتابیس خود را در فایبmain-local.php وارد نمایید

return [
\'components\' => [
\'db\' => [
\'class\' => \'yii\\db\\Connection\',
\'dsn\' => \'mysql:host=localhost;dbname=bge\',
\'username\' => \'root\',
\'password\' => \'123456789\',
\'charset\' => \'utf8\',
],
\'mailer\' => [
\'class\' => \'yii\\swiftmailer\\Mailer\',
\'viewPath\' => \'@common/mail\',
// send all mails to a file by default. You have to set
// \'useFileTransport\' to false and configure a transport
// for the mailer to send real emails.
\'useFileTransport\' => true,
],
],
];


آموزش فریم ورک Yii

فریم ورک Yii با استفاده از request امکان دسترسی به پارامتر های ارسالی را برای برنامه نویسان فراهم کرده .
با استفاده از این قابلیت شما می توانید به پارامترهای ارسالی کاربر نظیر post – get , … دسترسی داشته باشین.
یکی از مهمترین آنها ip کاربر می باشد :
برای دریافت ip کاربر به روش زیر عمل می کنیم


$userIP = Yii::$app->request->userIP;


آموزش فریم ورک Yii

ممکنه که شما در پروژه ی خودتون نیاز به نسخه فریم ورک Yii2 داشته باشید.

برای دریافت ورژن به دو روش می توانیم عمل کنیم»

استفاده از command line

به  فولدر root پروژه بروید . (همانجا که فایل yii وجود دارد) با اجرا گرفتن کد زیر در cmd  ورژن فریم ورک نمایش داده می شود


$ ./yii
This is Yii version 2.0.11.2.

استفاده از Yii API
با استفاده تابع زیر نسخه فریم ورک نمایش داده می شود

$version = Yii::getVersion();


آموزش فریم ورک Yii

آموزش برنامه نویسی php

در gmail  و سایر سرویس های ایمیل معتبر امکان پاسخ دادن به ایمیل های دریافتی به صورت اتوماتیک وجود دارد  که به آن auto reply  می گویند.در این آموزش نحوه ی فعال سازی این امکان در gmail  را قرار داده ایم. کافی است مراحل زیر را به ترتیب انجام بدید.

  1. ابتدا وارد gmail خود شوید
  2. در قسمت سمت راست بر روی آی چرخدنده کلیک کنید
  3. در منوی باز شده بر روی settings کلیک کنید:
  4. www.goyii.ir-ارسال اتوماتیک پاسخ در جیمیل
  5. در صفحه ی جدیدی که برای شما باز شده است گزینه ی Vacation responder را پیدا کنید.(در انتهای صفحه قرار دارد)
  6. به صورت پیش فرض این گزینه غیر فعال می باشد . آن را فعال کنید. (Vacation responder on)
  7. سپس رنج تاریخ  ، موضوع و متن پیام خود را انتخاب نمایید
  8. www.goyii.ir-ارسال اتوماتیک پاسخ در جیمیل
  9. و در آخر گزینه ی save را کلیک نمایید.

آموزش فریم ورک Yii

نمایش دیتا در view با استفاده از controller

مثال: می خواهیم یک اکشن در controller ایجاد کنیم و از طریق آن یک دیتایی را به ویو ارسال و آن را نمایش دهیم :

مرحله اول : ایجاد اکشن index در کنترلر article
برای ایجاد کنترلر: فایل ArticleControoler.php را در مسیر app->http->controllers ایجاد می کنیم:

[php]
namespace App\Http\Controllers;
use App\Article;
use Illuminate\Http\Request;
use View;
use App\Http\Requests;
class ArticleController extends Controller
{
     public function index(Request $request) {
        return view('article.index', [
            'title' => "goyii.ir",
        ]);
    }
}
[/php]

در کد بالا و در اکشن index ما دیتای goyii.ir را از طریق متغییر title به فایل index.blad.php ارسال می کنیم. که با $title در ویو می توانیم آن را دریافت کنیم.

مرحله دوم:برای نمایش باید ابتدا فولدر article را در مسیر resources->views ایجاد و در آن فایل فایل index.blade.php قرار دهیم:
فایل index.blade.php حاوی کد زیر :

[php]
<h1>
    welcome to  echo $title;
</h1>
[/php]

مرحله سوم : تنظیم routes :
کد زیر را در فایل web.php در فولدر Routes

[php]
Route::get('/article/index', 'ArticleController@index');
[/php]

در کد بالا هرگاه کاربر در مرورگر خود article/index را وارد نماید سیستم اکشن index در کنترلر article اجرا می کند.

نمایش دیتا در view با استفاده از controller
نمایش دیتا در view با استفاده از controller

آموزش فریم ورک Yii

تبلیغات

آخرین ارسال ها

آخرین جستجو ها

تولید کننده ظروف ملامین کسری یزد بسیج دانش آموزی خواهران نورآباد روزای خوب خرید و فروش انواع فلزیاب های برتر جهان موسسه آموزش عالی آزاد ماهان گیلان_ رودسر پورتال و سایت تفریحی خبری ایرانیان