In primo luogo, penso che sia necessario ripensare il tuo design un po '. Il punto fondamentale è che i limiti di lunghezza dovrebbero essere significativi, non solo lì per risparmiare spazio. PostgreSQL non memorizza 'A' :: varchar (10) in modo diverso rispetto a 'A' :: text (entrambi sono memorizzati come stringhe di testo a lunghezza variabile, purché il valore memorizzato, insieme a un identificatore di lunghezza e qualche altro metadati), quindi dovresti usare la dimensione più lunga che può funzionare per te, e usare le lunghezze per l'applicazione sostanziale piuttosto che per risparmiare spazio. In caso di dubbio, non limitare. Quando è necessario assicurarsi che si adatti a un'etichetta postale, vincolare in modo appropriato.
In secondo luogo la risposta di Dankohn sopra:
var Profile = sequelize.define('PublicID', {
public_id: {
validate: { len: [0,32] })
è come si potrebbe quindi aggiungere tale dell'ordine per il front-end. Ancora una volta, tale applicazione dovrebbe essere basata su ciò che sai di cui hai bisogno, non solo su ciò che sembra una buona idea in quel momento, e mentre è generalmente più facile rilassare i vincoli che stringere loro, per la lunghezza della corda, è davvero un gioco da ragazzi per fai le cose dall'altra parte
Per quanto riguarda l'utilizzo di tali applicazioni in altre applicazioni, è probabile che si desideri cercare le informazioni sui vincoli nei cataloghi di sistema, il che consente di ottenere una sorta di territorio avanzato.
fonte
2013-05-30 03:02:17