2010-04-23 16 views
2

J'ai l'expérience la plus étrange d'utiliser les taps pour déplacer des données entre ma machine et Heroku.Les robinets Heroku poussent l'étrangeté

Cela fonctionne bien, sauf qu'il semble perdre 0s directement derrière la décimale pour mes coordonnées géographiques, c'est-à-dire 50.0519322 pour une raison quelconque se met à 50.519322 ... aucune idée de pourquoi.

Lorsque je tire les données de l'emplacement distant ie. heroku db: pull ... ça marche bien, toutes les décimales intacts sur ma machine, cependant, quand je le repousse sur le serveur distant, il perd ces zéros. Surtout directement derrière la décimale, même si je ne l'ai pas encore remarqué ailleurs.

Au début, je stockait le lat et lng comme un simple numérique mais raffiné à:

change_column :places, :lat, :numeric, :precision => 15, :scale => 10 
change_column :places, :lng, :numeric, :precision => 15, :scale => 10 

sans résultat, toutes les idées ce qui se passe?

A partir de la console sur le serveur distant je reçois le lat comme étant:

#<BigDecimal:2aebcc5967c0,'0.50519322E2',18(18)> 

et ma machine:

#<BigDecimal:10232f7c8,'0.50519322E2',12(16)> 

qui est aussi étrange, le second parce qu'il apparaît comme 50.0519322 quand je l'édite à travers ma vue, mais quand je le fais to_f via la console, il me donne 50.519322

Le serveur et la machine locale sont postgres, le stockage est numérique.

+0

mis à niveau vers la dernière version des deux Heroku et les robinets, sans aide. J'ai déjà utilisé cette même convention avant et n'ai jamais eu un problème similaire, ou que j'ai remarqué. Donc ça m'inquiète. Je devrais perdre un 0 pour les données que j'utilisais ... – holden

+0

Est-ce que cela arrive encore avec les dernières gemmes de suite/heroku/taps? –

+0

Quelle est la base de données que vous utilisez et quel est le type de données du champ? – josh

Répondre