datatbase aktif kayıt oluştururken, birincil anahtarı olmayan yaratılmaktadır

oy
0

Öyle gibi aktif bir kayıt nesnesi oluşturma:

shop = ShopifyShop.create(shopify_domain: shopDomain, primary_domain: shopObj.domain, shopify_token: token, user_id: userId) if !shop

Aynı sahip bir nesne zaman primary_domainoluşturulur, kayıt veritabanında depolanmaz ve nesne hiçbir birincil anahtar oluşturulur

bu yüzden ne zaman:

p shop

alırım #<ShopifyShop id: nil, shopify_domain: ***.myshopify.com, shopify_token: ***, created_at: nil, updated_at: nil, user_id: 45, primary_domain: ***.myshopify.com>

Ben belki sınırlamak ilişkili olup olmadığını görmek için kontrol ama tabloda yalnızca bir birincil anahtar kısıtlaması gidecekseniz, ben bu neden olan emin değilim.

Herkes gerçekleşiyor olabilir biliyor musunuz?

Oluştur 27/11/2018 saat 18:23
kaynak kullanıcı
Diğer dillerde...                            


2 cevaplar

oy
2

Ben senin nesne basitçe geçersiz ve dolayısıyla veritabanına kaydedilmedi olduğundan eminim. Hiçbir sahip olmasının nedeni budur id. Herhangi bir hata ile orada olmadığını kontrol edebilirsiniz:

shop.errors.any?
shop.errors.messages # => display errors

Yükseltmek istiyorsanız RecordInvaliddoğrulamaları başarısız olursa hatayı kullanmak create!yerine create.

Cevap 27/11/2018 saat 18:30
kaynak kullanıcı

oy
2

Eğer dükkan için var doğrulamaları biri değil, bir nesne kaydedilecek neden oldu. createolursa olsun kaydedildiği olup olmadığına nesneyi döndürür.

Karar, ayrıca araştırmak için ise:

shop.persisted?
# => false
shop.errors
# => will display errors of your object
Cevap 27/11/2018 saat 18:25
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more