Поле tinyText
Метод tinyText применяется при создании миграции в Schema Builder для добавления нового столбца.
Он принимает два параметра: имя колонки и необязательную длину.
По умолчанию длина составляет 255 символов, что идеально подходит для хранения коротких строк,
таких как краткие описания или подзаголовки.
Синтаксис
<?php
Schema::table('table', function (Blueprint $table) {
$table->tinyText('column');
});
?>
Пример
Давайте добавим в таблицу 'articles' поле 'short_description' для краткого описания статьи:
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::create('articles', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->tinyText('short_description');
$table->text('content');
$table->timestamps();
});
}
public function down(): void
{
Schema::dropIfExists('articles');
}
};
?>
Пример
Рассмотрим добавление поля 'excerpt' к существующей таблице 'posts':
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::table('posts', function (Blueprint $table) {
$table->tinyText('excerpt')->nullable();
});
}
public function down(): void
{
Schema::table('posts', function (Blueprint $table) {
$table->dropColumn('excerpt');
});
}
};
?>
Пример
Используем поле 'subtitle' в модели 'Book' и сохраним данные:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Book extends Model
{
protected $fillable = ['title', 'subtitle', 'description'];
}
?>
<?php
namespace App\Http\Controllers;
use App\Models\Book;
class BookController extends Controller
{
public function store()
{
$book = new Book();
$book->title = 'Laravel Guide';
$book->subtitle = 'Short course';
$book->description = 'Full description...';
$book->save();
$res = Book::where('subtitle', 'Short course')->get();
foreach ($res as $item) {
echo $item->title . ' - ' . $item->subtitle;
}
}
}
?>
Результат выполнения кода:
["Laravel Guide - Short course"]
Смотрите также
-
поле
string,
которое создаёт VARCHAR-столбец -
поле
text,
которое создаёт столбец типа TEXT -
поле
mediumText,
которое создаёт столбец типа MEDIUMTEXT -
поле
longText,
которое создаёт столбец типа LONGTEXT