// Роут для всех
Route::get('/{slug}', 'ContentControler@content');
// Контроллер
public function content(string $slug)
{
$category = Category::whereSlug($slug)->first();
if ($category) {
// Возвратили категорию
}
// Сюда попали если категории нет
$post = Post::whereSlug($slug)->firstOrFail();
// Возвратили пост
}
$string = 'Ваш 'текст'';
echo htmlspecialchars_decode($string , ENT_QUOTES); // Ваш 'текст'
// Миграция users
$table->id();
$table->string('name');
// Миграция cities
$table->id();
$table->string('name');
// Миграция city_user
$table->foreignId('city_id')->constrained('cities');
$table->foreignId('user_id')->constrained('users');
// Модель User
public function cities()
{
return $this->belongsToMany(City::class);
}
To avoid any duplication when used in child components, please give a unique identifier with the hid key to the meta description. This way vue-meta will know that it has to overwrite the default tag.
// 1. Круглые скобки зачем?
$d = "1, 2, 3"; // Строка
// 2. $array = array($d);
$array = array("1, 2, 3"); // Массив с одним элементом - строкой
// Если хотели в первой строке массив, то это делается квадратными
// скобками и разделяем запятыми
$d = [1, 2, 3]; // Массив
// Если хотели во второй строке массив, то это делается методом explode
$d = "1, 2, 3";
$array = explode(', ', $d); // Массив [1, 2, 3]
public function handle(Request $request, Closure $next, string $subscription)
{
if (
$request->user()->subscription->name !== $subscription
|| $request->user()->subscription->valid_until < Carbon::now()
) {
abort(403);
}
return $next($request);
}