Сначала создайте модель.Вы можете сделать это вручную или с помощью artisan
в терминале:
php artisan make:model Option
Это создаст App\Option
класс.Затем настройте модель в app/Option.php
:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Option extends Model
{
//
protected $table = 'options';
}
Теперь в любом контроллере, например App\Http\Controllers\AnyController
, вы можете использовать код:
use App\Option;
// Other codes ...
public function show($id) {
$option = Option::find($id);
echo $option->option_name; // print "site_name"
}
РЕДАКТИРОВАТЬ ПОСЛЕ ОПЦИИ ДАТЬ НОВУЮ МОДЕЛЬ -------------
Так что, если вы используете модель:
namespace App;
use Illuminate\Database\Eloquent\Model;
class DNBOptions extends Model
{
protected $table = 'dnb_options';
protected $primaryKey = 'option_name';
protected $fillable = [
'option_name', 'option_value'
];
}
, то в контроллере или представлении используйте:
$option = \App\DNBOptions::find('site_name');
echo $option->option_value;
// Get all
$options = \App\DNBOptions::all();
foreach($options as $option) {
echo $option->option_name;
echo $option->option_value;
}
// Print 1st
echo $options->first()->option_name;
// With where
$option = \App\DNBOptions::where('option_name', 'site_name')->first();
echo $option->option_value;
Полный контроллер - пример просмотра:
<?php
namespace App\Http\Controllers;
use App\DNBOptions;
class OptionController extends Controller
{
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$options = DNBOptions::all();
$data ['options'] => $options;
return view('options.index', $data);
}
}
И класс просмотра: resources/views/options/index.blade.php
:
@extends('layouts.app')
@foreach($options as $option)
{{ $option->site_name }}
{{ $option->option_value }}
@endforeach
Используйте @extends
, если у вас есть шаблон макета.И смотрите документацию Laravel для получения дополнительной информации.