Collections için Proxy
Loris Leiva, Collection::when()
yöntemi daha yüksek bir proxy kullanma yeteneğine katkıda bulundu :
// With this PR, this:
$collection->when($condition, function ($collection) use ($item) {
$collection->push($item);
});// ... can be refactored as this:
$collection->when($condition)->push($item);
Bu PR, diğer üst düzey proxy yöntemlerini zincirlemenizi sağlar:
// This:
$collection->when($condition, function ($collection) {
$collection->map->parseIntoSomething();
});// ... can be refactored as this:
$collection->when($condition)->map->parseIntoSomething();
Artisan expectsChoice() Assertion
Adrian Nürnberger seçimleri sorgulamak için bir komut test yöntemine katkıda bulundu.
Aşağıdaki örnek verildiğinde:
$name = $this->choice('What is your name?', ['Taylor', 'Dayle'], $defaultIndex);
Yalnızca bu sorgunun cevabını alabilirsiniz; verilen seçenekleri test edemezsiniz.
$this->artisan('question')
->expectsQuestion('What is your name?', 'Taylor')
->assertExitCode(0);
Laravel 7.4' ile aşağıdakileri yapabilirsiniz:
$this->artisan('question')
->expectsChoice('What is your name?', 'Taylor', ['Taylor', 'Dayle'])
->assertExitCode(0);
Dördüncü bir boolean argümanını sorgulayarak seçeneklerin sırasını da değiştirebilirsiniz:
$this->artisan('question')
->expectsChoice('What is your name?', 'Taylor', ['Taylor', 'Dayle'], true)
->assertExitCode(0);
@Props Blade Etiketi için Varsayılan Değerler
@nihilsen, varsayılan destekleri şu yollarla tanımlama yeteneğine katkıda bulundu @props
:
<!-- Previously you might need something like: -->
@props(['type', 'message'])
@php
$type = $type ?? 'info'
@endphp<!-- New defaults in Laravel >=7.4 -->
@props(['type' => 'info', 'message'])
Sorgu Oluşturucu’dan Order Kaldırma
Jonathan Reinink reorder()
, orderBy()
çağrıları sıfırlamak için sorgu oluşturucuya bir yöntem ekledi :
$query = DB::table('users')->orderBy('name');$unorderedUsers = $query->reorder()->get();
Yeniden sırala, gerektiğinde geri çekilme özelliğiyle, İlişkili tablolarda varsayılan düzeni tanımlamanıza olanak tanır:
class Account extends Model
{
public function users()
{
return $this->hasMany(User::class)->orderBy('name');
}
}// Remove the name orderBy and order by email
$account->users()->reorder()->orderBy('email');// The same can be written as:
$account->users()->reorder('email');
Sürüm notları
Yeni özelliklerin ve güncellemelerin tam listesini aşağıda ve GitHub’da 7.3.0 ile 7.4.0 arasındaki farkları görebilirsiniz . Laravel 7.x için tüm sürüm notlarını en son v7 değişiklik günlüğünde bulabilirsiniz :
v7.4.0
Eklendi
make:policy
özelleştirilebilir hale getirir ( # 32040 , 9d36a36 )HigherOrderWhenProxy
Collections için Uygulama ( # 32148 )Illuminate\Testing\PendingCommand::expectsChoice()
( # 32139 )- “props” blade etiketi için varsayılan değerler desteği eklendi ( # 32177 )
- Eklenen
Castable
arayüzü ( # 32129 , 9cbf908 , 651371a ) - Sorgu oluşturucudan orderları kaldırma özelliği eklendi ( # 32186 )
Sabit
PendingMailFake::sendNow()
VePendingMailFake::send()
( # 32093 ) için eksik dönüş eklendi- Özel Model Özelliklerinin Sabitlenmesi ( # 32118 )
- Sabit route grubu ( # 32135 , 870efef )
Güncellenen
- Swift Mailer bağlarını kaldır ( # 32165 )
- Php artisan çalıştırılırken yayınlanacak dosyalara middleware.stub ekleme
stub:publish
( # 32099 ) - Php artisan
stub:publish
( # 32100 ) çalıştırılırken yayınlanacak dosyalara factory.stub ekleme - Php artisan çalıştırılırken yayımlanacak dosyalara seeder.stub eklenmesi
stub:publish
( # 32122 )
Yorum Yap