throw new InvalidDataTelegramException(Response::HTTP_UNPROCESSABLE_ENTITY, __('auth.incorrect_telegram');
enum JournalAction: string
{
case Edit = 'edit';
case Add = 'add';
public function translated($replacements=[]): string
{
return Lang::get('journal.' . $this->value,...$replacements);
}
}
use Illuminate\Database\Eloquent\Casts\Attribute;
class Order extends Model{
protected $casts = ['date_time' => 'datetime:Y-m-d H:00'];
function dateTime(): Attribute
{
return Attribute::make(
get: fn () => $this->castAttribute(
'date_time',
($this->date ?: '1970-01-01') . ' ' . ($this->time ?: '10:00:01')
)
)
);
}
}
# php artisan tinker
App\Models\Order::first()->date_time;
# = Illuminate\Support\Carbon @0 {#7053
# date: 1970-01-01 00:00:00.0 UTC (+00:00),
# }
->orderByRaw('CASE isread WHEN 0 THEN 0 ELSE 1 END, last_message_time DESC')
ORDER BY FIELD(id, 100, 100500, 300), last_message_time
// пакет config/logging.php
return [
'channels' => [
'my-packet-name-log-channel' => [
'driver' => 'single',
'path' => env('MY_P_N_LOG_PATH', storage_path('logs/my-packet-name.log')),
'level' => env('LOG_LEVEL', 'debug'),
'replace_placeholders' => true,
'permission' => 0664
// ...
],
],
];
// сервис провайдер пакета
public function register(): void
{
if (!($this->app instanceof CachesConfiguration && $this->app->configurationIsCached())) {
$config = $this->app->make('config');
$config->set('logging', array_merge_recursive(
require __DIR__ . '/../config/logging.php',
$config->get('logging', [])
));
}
}
json {'img'=>full_image_url, 'tumb'=>tumb_image_url}
<img src=tumb_image_url @click=showImage(full_image_url)>
Вариантов вывода несколько
"resizeImageGet", которая при первом вызове сжимает и обрезает изображение
пользователь не реализует контракт "MustVerifyEmail"
class User extends Authenticatable implements MustVerifyEmail
Не могу удалить запись из БДэтот диагноз не про код.
Route::delete('/pov/{oborudovanie}',
public function __invoke(Poverka $poverka)...
axios.delete('/api/oborudovanies/pov/' + id)
// route
Route::get('/pov/{oborudovanieId}', [PoverkaSpisokController::class, '__invoke']);
// controller
public function __invoke(int $oborudovanieId )
{
$poverka =Poverka::whereHas('oborudovanie', function($q) use ($oborudovanieId){
$q->where('id', $oborudovanieId);
})
// ->with('proverkas') // если ещё нет на странице
->latest()
->paginate(15);
...
Подскажите пожалуйста, почему так?
@foreach ($categories as $category)
<option
value="{{ $category }}"
{{ request()->get('transaction')==$category? 'checked':null }}
>{{ $category }}</option>
@endforeach
class User extends Model
{
public function projects(): BelongsToMany
{
return $this->belongsToMany(Project::class);
}
}
class Project extends Model
{
public function scopeActive(Builder $query): void
{
$query->where('active', 1);
}
}
dump(User::find(1)->projects()->active()->get());
public static function fromRequest(FormRequest $request): static
{
$v = $request->validated()
return new static($v['name']??null, $v['email']??null);
}
// кмк так проще и понятнее
final class UserController extends Controller
{
public function update(int $userId, UpdateUserRequest $request): UserResource
{
$valid = $request->validated();
$user = User::findOrFail($userId);
$user->update([
'name' => $valid['name'] ?? "xyz"
'email' => $valid['name'] ?? "null or not",
]);
return new UserResource($user);
}
}
laravel/breeze v1.20.1
vite: 4.2.1
laravel-vite-plugin: 0.7.4
vite-plugin-full-reload: 1.0.5
@vitejs/plugin-vue: 4.1.0
// vite.config.js
export default defineConfig({
plugins: [
laravel({
input: 'resources/js/app.js',
// refresh: true,
refresh: [],
}),
...