Comments (11)
Testé avec Firefox 93 et Edge 94
from mercator.
As-tu bien la dernière version du projet ?
Pourrais-tu poster la source de la page ?
from mercator.
Il se trouve que Laravel, pour un « char » dans Postgre crée un « bpchar » au lieu d’un « varchar ».
« bpchar », c’est « blank padded character », donc c’est le nom du routeur qui fait 255 caractères.
Tous les autres « name » dans mercator sont des « string ». Et du coup, cela devient des « varchar ».
from mercator.
Je suppose que le nom d’un routeur physique devrait être aussi un « string ».
Je ne sais pas s’il est possible de faire "table->string("name")->change();" sur une colonne « char ».
Sinon, il faut le faire en SQL, mais ça fait autant de requête que de base de données supportées.
from mercator.
Laravel devrait fonctionner avec PostgreSQL 9.6+ ( https://laravel.com/docs/8.x/database )
Quelle version de PostgreSQL utilises-tu ? Avec quel OS ?
from mercator.
Nous nous sommes mal compris.
Cela marche très bien avec Postgre.
Mais la création de la colonne « name » pour « physical_routeur » utilise $table->char() au lieu de $table->string().
Tous les autres « name » utilisent « string() ».
à comparer avec
Je pense que la différence vient de cette phrase, de la documentation MySQL :
When CHAR values are retrieved, trailing spaces are removed unless the PAD_CHAR_TO_FULL_LENGTH SQL mode is enabled.
https://dev.mysql.com/doc/refman/8.0/en/char.html
alors que Postgre renvoie la chaîne avec les espaces à droite.
Je ne peux pas vérifier en dehors du boulot, mais j’utilise Postgre fourni dans une Ubuntu 20.04. Probablement 12.x.
from mercator.
Corrigé, le type du champ nom a été modifié de "char" en "string".
pour appliquer la modification :
git pull
php artisan migrate
from mercator.
Cela ne fonctionne pas avec Postgre.
J’ai regardé la migration, et elle est spécifique à MySQL.
J’ai essayé de faire fonctionner avec les migrations Laravel et ce post :
https://medium.com/@matriphe/adding-custom-char-type-in-laravel-migration-780d8a9cac29
La migration se déroule sans erreur, mais la colonne ne change pas de type.
Je ne pourrai pas regarder plus aujourd’hui.
Il y a sûrement moyen de la faire comme pour MySQL, mais cela fera une requête spécifique par base de données.
from mercator.
Voici la commande SQL pour PostgresSQL:
ALTER TABLE physical_routers ALTER COLUMN name TYPE varchar(255);
Pour la migration, il faut supprimer le code de la fonction up() et exécuter.
from mercator.
Merci pour la requête.
Par contre, cela touchera tous ceux qui utilise postgre.
Personnellement, je pense que ce serait mieux de modifier la migration initiale.
Le nombre de personne utilisant mercator actuellement avec une base postgre doit être assez limité, et cela permettra d’éviter le problème totalement pour tous les nouveaux utilisateurs.
from mercator.
Bonne remarque, c'est fait.
Merci !
from mercator.
Related Issues (20)
- Bug Flux HOT 6
- Erreur 500 Menu Serveurs Logiques HOT 7
- Impossible de démarrer la stack docker-compose HOT 4
- Chiffrement base de données HOT 2
- Serveurs DNS et DHCP en double-pile HOT 1
- Problèmes rencontrés avec les API Mercator HOT 14
- Ajout d'adresses IP de routeurs impossible (champ de base de données trop court) HOT 3
- probleme mise a jour HOT 8
- docker-compose deployment HOT 1
- Prise en main de mercator par l'exemple ? HOT 3
- Erreur sur l'écran d'édition de flux pour les sources et destinations de type Database HOT 6
- Limitation du nombre de caractères lors de la création d'une application HOT 3
- [API] La terminaison /api/data-processing semble absente HOT 5
- Ajout de la modélisation des flux réseaux HOT 8
- Demande Evolution : bloc de sélection des "Bases de données" dans la vue des flux applicatifs HOT 13
- [API] Terminaison /api/processes HOT 3
- Vue Metiers > Taches HOT 4
- Problème de chargement des fichiers CSS HOT 2
- Mauvaise redirection sur édition d'un macro-processus en vue Exploration HOT 2
- Fonctionnalité oubli de mot de passe HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mercator.