SORU
19 EYLÜL 2012, ÇARŞAMBA


Nasıl sequelize kullandığı bir düğüm app düzenlemek için?

Sequelize bu ORM kullanan örnek nodejs bir uygulama arıyorum.

En büyük endişem gelecek bu modeller birbirleriyle karmaşık ilişkileri ise ayrı bir js dosyalarında modelleri tanımlamak yüzünden gerektirecek imkansız gibi görünüyor olmasıdır() bağımlılık döngüsü. İnsanlar çok uzun çok bir dosyada tüm modellerini tanımlamak belki?

Modelleri nasıl tanımlandığına başlıca ilgi duyuyorum ve uygulama yoluyla. Bazı doğrulama var benim kendi "iyi" şeyler yapmak için bir yol. ben ne yapıyorum böyle yapardım

CEVAP
31 EKİM 2012, ÇARŞAMBA


Kısa hikaye

Bu durumda hile modeli başlatmak için değildosyayı ama sadece başlatma için gerekli bilgileri sağlamak ve merkezi bir modül modelleri kurulum ve örnekleme ilgilenelim.

Adımlar:

  • Alanları, ilişkileri ve seçenekler gibi modeli hakkında veri, birkaç Model dosyaları var.
  • Yükler tüm bu dosyaları ve kurulum tüm model sınıfları ve ilişkileri olan tek bir modül var.
  • Kur app.js dosya tek modül.
  • Singleton modeli sınıfları modül olsunyokmodel dosyaları require kullanın, singleton modeller yerine yerleştirin.

Uzun hikaye

Burada ilgili kaynak kodunu içeren bu çözüm, daha ayrıntılı bir açıklama:

https://github.com/JeyDotC/articles/blob/master/EXPRESS WITH SEQUELIZE.md

EDİT: Bu çok eski bir cevap! (bilgi için aşağı okuyun)

Eski ve pek çok açıdan sınırlı!

  • İlk@yorum (çok yaşadım) belirtilen jinglesthula olarak , bu dosyalar gerektiren sorunları var. require readdirSync Aynı şekilde çalışmıyor çünkü.

  • İkinci-çokilişkilerde sınırlı - kod sağlamazseçenekleryani bu dernekMÜMKÜNbunun gibi belongsToMany oluşturmak gerekir through özelliği. En temel assocs yapabilirsiniz.

  • Üçüncü- model ilişkileri çok sınırlıdır! Eğer yakından kodu okursanız, ilişkiler olduğunu göreceksinizNesneyerine birDizieğer yapmak istiyorsanız , o kadarbirden fazlaaynı türden iki kez belongsTo olması gibi) dernekler - olamaz!

  • Dördüncü- Singleton thingy gerek yok. Nodejs her modül kendisi tarafından singleton, tüm bu yapar sebepsiz yere oldukça karmaşıktır.

Çiftlik cevabı görmelisiniz! (Bağlantı için makale kırıldı, ama ben düzeltirim bu resmi örnek sequelize: https://github.com/sequelize/express-example/blob/master/models/index.js - Gözat tüm proje için bir fikir ne oluyor).

p.s. İnsanlar bile herhangi bir yeni cevap olarak görmesin diye upvoted bu yazıyı düzenlemeye çalışıyorum.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Klemens Torggler

    Klemens Torg

    11 Mart 2008
  • Paulo Bautista

    Paulo Bautis

    21 Aralık 2008
  • spyib

    spyib

    9 Ocak 2007