users
tablosum ve businesses
tablosuyla bire bir/bir ilişki var (kullananlar. User_id => businesses.user_id). Benim users
masamda, kullanıcının türden bir iş olup olmadığını söyleyen bir ayrımcı var ve bu yüzden businesses
tablosunda da ayrıntılara sahip olmam gerekiyor.Argümanlar Laravel fabrikalarına nasıl geçilir?
Kullanıcılarımı şu anda çalışmakta olan fabrikamla oluşturmak ve ardından yalnızca ayrımcının bir ticari hesaba işaret ettiği iş ayrıntılarını oluşturmak istiyorum.
aklımda üç seçenek vardır:
- kullanarak daha sonra kullanıcıların fabrikadan oluşturun ve '-> Her()' discriminator adına çek yapmak ve bir fabrika kullanarak yeni iş kullanıcı oluşturun. Ancak, kullanıcının atandığı
user_id
iş fabrikasına geçemiyorum. - İlk önce kullanıcıları oluşturun. Daha sonra İş ekim makinemde, bir 'işletme' ayrımcısıyla eşleşen tüm Kullanıcıları alın. Sonra tüm bu kullanıcılar için iş ayrıntılarını yaratan bir fabrika çalıştırın. Ama yine de, zaten oluşturulmuş kullanıcının
user_id
iş fabrikasınauser_id
iş fabrikasıyla bağlantı kurardım. - İşletme işyerimde yeni bir Kullanıcı oluşturun ve kimliği alın, böylece
users.user_id
vebusiness.user_id
arasındaki bağlantıyı yapın. Ancakuser.user_type
için rasgele bir jeneratör kullanıyorum, bu yüzdenbusinesses
tablosunu doldurmuş olsam bile, ayrımcıyı 'kişisel' olan kullanıcılar için olabilir.
Başka bir yolu var mı? Seçicilerimi fabrikamdan değiştirebilir miyim?
Bunu nasıl bilebilirdim. Laracast dersini izledim ve kendimi ayarlamayı hatırlıyorum. Tabii ki dokümantasyonda da vardı: http://laravel.com/docs/master/testing#model-factories. Çok teşekkürler. – Cristian
@ Cristian'ın linki artık eskimiş görünüyor, 5.4 için bkz. Https://laravel.com/docs/5.4/database-testing#using-factories ve 'Kalıcı Modeller' seçeneğine aşağı kaydırın – morph
buna ne dersiniz? '' php $ student-> assignRole ('student'); '' ' spatie/izni kullanarak im –