Je veux créer mon application Rails avec MySQL, parce que je l'aime tellement. Comment puis-je faire cela dans la dernière version de Rails au lieu du SQLite par défaut?Créer une nouvelle application Ruby on Rails en utilisant MySQL au lieu de SQLite
Répondre
Si vous avez déjà un projet de rails, changer l'adaptateur dans le fichier config/database.yml
-mysql
et assurez-vous que vous spécifiez un nom d'utilisateur et mot de passe, et le cas échéant, une prise:
development:
adapter: mysql2
database: db_name_dev
username: koploper
password:
host: localhost
socket: /tmp/mysql.sock
Ensuite, assurez-vous éditez votre Gemfile pour inclure l'adaptateur mysql2 ou activerecord-jdbcmysql (si vous utilisez jruby).
Normalement, vous devez créer une nouvelle application Rails en utilisant
rails ProjectName
Pour utiliser MySQL, utilisez
rails new ProjectName -d mysql
Si vous créez un rail application, vous pouvez définir la base de données en utilisant l'-d changer comme ceci:
rails -d mysql myapp
Il est toujours facile de changer votre base de données plus tard, et en utilisant sqlite est vraiment plus facile si vous développez sur un Mac.
rails -d mysql ProjectName
Ror rails 3 utilisation
$rails new projectname -d mysql
Dans Rails 3, vous pouvez faire
$rails new projectname --database=mysql
Si vous utilisez des rails 3 ou plus la version
rails new your_project_name -d mysql
si vous avoir une version antérieure
rails new -d mysql your_project_name
Avant de créer votre projet, vous devez trouver la version rails. que vous pouvez trouver par
rails -v
$ rails --help
est toujours votre meilleur ami
utilisation:
$ rails new APP_PATH[options]
noter également que les options devraient être données après le nom de l'application
rails et mysql
$ rails new project_name -d mysql
rails et postgresql
$ rails new project_name -d postgresql
Vous devez utiliser le commutateur -D au lieu de -d, car il va générer deux applications et mysql sans dossiers de documentation.Vous pouvez également utiliser l'option --database
.
rails new <project_name> -d mysql
OU
rails new projectname
changements dans config/database.yml
development:
adapter: mysql2
database: db_name_name
username: root
password:
host: localhost
socket: /tmp/mysql.sock
Aller au terminal et à écrire:
rails new <project_name> -d mysql
Créer application avec option -d
rails new AppName -d mysql
A travaillé parfaitement pour moi! – Luke
Si vous ne l'avez pas créé votre application encore, allez juste cmd (pour Windows) ou terminal (pour linux/unix) et tapez la commande suivante pour créer une application de rails avec base de données MySQL:
$rails new <your_app_name> -d mysql
Il fonctionne pour quoi que ce soit rails au-dessus la version 3. Si vous avez déjà créé votre application, vous pouvez faire l'une des 2 choses suivantes:
- créer une another_nam e application avec base de données mysql, aller au cd un autre nom/config/et copier le fichier database.yml à partir de cette nouvelle application. Collez-le dans la base de données.yml de votre_app_name app. Mais assurez-vous de changer les noms des bases de données et définissez le nom d'utilisateur/mot de passe de votre base de données en conséquence dans le fichier database.yml après cela.
OU
- Aller au CD your_app_name/config/et database.yml ouvert. Renommer comme suit:
développement:
Adaptateur: mysql2
base de données : db_name_name
nom d'utilisateur: root
mot de passe:
hôte: localhost
socket : /tmp/mysql.sock
En outre, supprimez gem 'sqlite3' de votre Gemfile et ajoutez la gemme 'mysql2'
Il suffit d'aller sur les rails console et tapez:
rails new YOURAPPNAME -d mysql
D'abord, assurez-vous que gem mysql est installé, sinon?que le type commande suivante dans votre console
gem install mysql2
que de créer de nouveaux rails application et définir la base de données MySQL comme base de données par défaut en tapant la commande suivante dans votre console
rails new app-name -d mysql
vous voulez ajouter la gemme à Gemfile à la place. – Riccardo
Le nouveau projet, peasy facile:
rails new your_new_project_name -d mysql
Sur projet existant, certainement plus délicat. Cela m'a donné un certain nombre de problèmes sur les projets ferroviaires existants. Ce genre de travail avec moi:
# On Gemfile:
gem 'mysql2', '>= 0.3.18', '< 0.5' # copied from a new project for rails 5.1 :)
gem 'activerecord-mysql-adapter' # needed for mysql..
# On Dockerfile or on CLI:
sudo apt-get install -y mysql-client libmysqlclient-dev
Ceci est utile; comme les autres réponses utilisent juste le générateur. Cette réponse fonctionne pour ajouter MySQL à une application après sa création, soit pour remplacer une base de données existante (par exemple SQLite), soit pour ajouter une base de données secondaire. En outre, mysql2 semble être le joyau de ces jours-ci pour Rails. – rcd
vous devrez également mettre à jour le Gemfile; enlever 'gem 'sqlite3'' et ajouter' gem' mysql2'' – RGB