SORU
9 AĞUSTOS 2012, PERŞEMBE


Raylar sütun türleri için belge yok?

20* *liste: basit tip daha fazla arıyorum

:primary_key, :string :metin :tam sayı :kayan :ondalık :datetime :zaman damgası :zaman, :tarih, :ikili :boolean

Ama orada herhangi bir belge aslındatanımlarbu alanlar?

Özellikle:

  • :string :text arasındaki fark nedir?
  • :float arasında :decimal?
  • :time, :timestamp :datetime ayırt edici özellikleri nelerdir?

Bu tür nüansları her yerde belgelenmiş?

DÜZENLEME:-Platform DB uygulamaları puan sormaya çalıştığım soru alakasız.,, :datetime demek Raylar amaçlanan anlamı tanımlanmış bir belge yoksa,-adaptör-db yazarları karşılık gelen sütun türü seçerken gitmek ne zaman?

CEVAP
10 AĞUSTOS 2012, Cuma


Kurallar kişisel deneyimlerinden inşa:

  • String:
    • 255 karakter (VERİTABANI) bağlı olarak sınırlı
    • Kısa metin alanları (isim, e-posta, vs.) kullanın
  • Metin:
    • Uzunluğu (VERİTABANI bağlı olarak) sınırsız
    • Yorum, blog yazıları, vb için kullanın. Başparmak genel kural: eğer button ile yakalanan varsa, Metin kullanın. Giriş TextField öğeleri kullanarak, dize kullanın.
  • Tamsayı:
    • Tam sayılar
  • Yüzer:
    • Ondalık sayılar kayan nokta hassas saklı
    • Hassas bazı hesaplamalar; matematik işlemleri yanlış yuvarlama nedeniyle genellikle iyi için sorunlu olabilir giderilmiştir.
  • Ondalık:
    • Ondalık sayılar hesaplamalar ihtiyacı neye göre değişir bu hassasiyetle saklı; doğru olması gereken matematik için bunları kullanın
    • Yüzer ve ondalık sayılar arasındaki farklar örnekler ve ayrıntılı bir açıklaması için this yazıya bakın.
  • Boolean:
    • Kullanmak doğru/yanlış öznitelikleri depolamak için (yalnızca iki devlet olan şeyler yani, on/off gibi)
  • İkili:
    • Özgün, raw formatında fotoğraf, film ve diğer dosyaları depolamak için veri adlı parçalarını kullanınlekeler
  • :primary_key
    • Bu veri türü ne olursa olsun, birincil anahtar veri türü içine seçtiğiniz veritabanı gerektirir çevirir (8* yani *postgreSQL) Raylar bir yer tutucudur. Kullanımı biraz karmaşık ve tavsiye edilmez.
    • Model ve geçiş kısıtlamaları (validates_uniqueness_of :unique => true seçeneği add_index gibi) yerine birincil anahtar işlevselliği taklit kendi alanları için kullanın.
  • Tarih:
    • Mağazaları tek bir tarih (yıl, ay, gün)
  • Zaman:
    • Mağazalar sadece bir Saat (Saat, Dakika, Saniye)
  • DateTime:
    • Mağazalar tarih ve saat
  • Zaman damgası
    • Mağazalar tarih ve saat
    • Not: Raylar amacıyla, hem de zaman Damgası ve DateTime aynı şeyi (her iki türün de tarih ve saati depolamak için kullanın). TL için;her iki neden var DR açıklama, okuma alt paragraf.

Bunlar genellikle var olan türleri vardır; bu yardımcı olur umarım. Ben gerçekten bu konuda resmi belgeler yok, neden bilmiyorum. Ayrıca, başvurulan bu veritabanı adaptörleri Raylar yazan aynı kişi tarafından yazılmış sanırım, muhtemelen adaptörler yazdıkları zaman gitmek için herhangi bir belge ihtiyacı yoktu. Bu yardımcı olur umarım!

Not: :DateTime :Timestamp veritabanı sistemleri ile, çoğunlukla uyumluluk için Raylar ile birlikte gelir bulabilirim ne de varlığı. Örneğin, MySQL TIMESTAMP veri türü bir unix zaman damgası olarak saklanır. Onun geçerli Aralık gider 1970 2038 ve zamanı saklı olarak sayısından itibaren geçen saniye son epoch olan sözde normal, ama pratikte farklı olabilir, Sistem, Sistem. Tanıma göreli zaman iyi bir şey değildi gerekiyor veritabanları, MySQL daha sonra tanıtılan DATETIME türü, sakladığı her rakam, yıl, ay, gün, saat, dakika ve saniye, maliyet boyutu artırmak. TIMESTAMP veri geriye uyumluluk korundu. Diğer veritabanı sistemleri benzer evrimler geçirdi. Raylar çoklu standartlar var olduğunu kabul, ve her iki arayüzleri sağladı. Ancak, Raylar ActiveRecord varsayılanları :Timestamp :DateTime Her iki tarih MySql saklanan UTC Rails programcıları için işlevsel bir fark yapar ki DATETIME. Bu yüzden kullanıcılar mevcutkeşkeikisi arasında ayrım yapabiliyor. Derinlemesine bir açıklama daha, this cevabı görmek için ().

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Deany Boii

    Deany Boii

    27 Kasım 2007
  • dougownsall

    dougownsall

    7 EKİM 2007
  • SlimaksClass

    SlimaksClass

    15 Kasım 2010