Si vous avez des colonnes DB created_at
et updated_at
Rails définira automatiquement ces valeurs lorsque vous créez et mettez à jour un objet de modèle. Y a-t-il un moyen de sauvegarder le modèle sans toucher à ces colonnes? J'apporte des données héritées et je voudrais définir ces valeurs à partir des valeurs correspondantes dans les champs de données hérités (différemment nommés). Je trouve quand je les ai placés sur le modèle, puis sauvegardez le modèle, Rails semble remplacer les valeurs entrantes.Existe-t-il un moyen d'éviter la mise à jour automatique des champs d'horodatage Rails?
Bien sûr, je pourrais simplement nommer les colonnes du modèle Rails différemment pour éviter cela, mais une fois les données importées, je veux que Rails fasse son horodatage automatique.
Vous pouvez même extraire ceci dans une méthode, par ex. 'without_timestamps def vieux = ActiveRecord :: Base.record_timestamps ActiveRecord :: Base.record_timestamps = false commencer rendement assurer ActiveRecord :: Base.record_timestamps = old end end' – nonrectangular
Avons-nous besoin de le réinitialiser à 'true' même lors de l'exécution de scripts ou de code dans la console? – oldergod
Je pense que http://stackoverflow.com/a/37193298/1214748 est beaucoup mieux. Il ne l'éteint pas globalement pour toute l'application – maschwenk