Chcę utworzyć moją aplikację Rails z MySQL, ponieważ tak bardzo ją lubię. Jak mogę to zrobić w najnowszej wersji Railsów zamiast domyślnego SQLite?Utwórz nową aplikację Ruby on Rails używając MySQL zamiast SQLite
Odpowiedz
Jeśli masz już projekt szynach zmienić zasilacz w pliku config/database.yml
do mysql
i upewnij się, podać poprawną nazwę użytkownika i hasło, a opcjonalnie gniazdo:
development:
adapter: mysql2
database: db_name_dev
username: koploper
password:
host: localhost
socket: /tmp/mysql.sock
Następnie upewnij się, edytuj Gemfile, aby dołączyć adapter mysql2 lub activerecord-jdbcmysql (jeśli używasz jruby).
Normalnie, można utworzyć nową aplikację Rails przy użyciu
rails ProjectName
Aby korzystać z MySQL, użyj
rails new ProjectName -d mysql
Jeśli tworzysz aplikację nowych szyn można ustawić bazy danych za pomocą -D zmień w następujący sposób:
rails -d mysql myapp
Zawsze łatwo jest zmienić bazę danych później i za pomocą sqlite jest naprawdę łatwiejsze, jeśli rozwijasz się na komputerze Mac.
rails -d mysql ProjectName
Ror szyny 3 Zastosowanie
$rails new projectname -d mysql
W Rails 3, można zrobić
$rails new projectname --database=mysql
Jeśli używasz szyny 3 lub większą wersję
rails new your_project_name -d mysql
jeśli ciebie mają wcześniejszą wersję
rails new -d mysql your_project_name
Przed utworzeniem projektu należy znaleźć wersję szyn. które można znaleźć przez
rails -v
$ rails --help
jest zawsze najlepszym przyjacielem
Wykorzystanie:
$ rails new APP_PATH[options]
również pamiętać, że opcje powinny być podane po nazwie aplikacji
szyny i mysql
$ rails new project_name -d mysql
szyny i PostgreSQL
$ rails new project_name -d postgresql
należy użyć przełącznika -D zamiast -d ponieważ wygeneruje dwie aplikacje i MySQL bez żadnych folderów z dokumentacją.
rails -D mysql project_name (less than version 3)
rails new project_name -D mysql (version 3 and up)
Alternatywnie można użyć opcji --database
.
rails new <project_name> -d mysql
LUB
rails new projectname
Zmiany w config/database.yml
development:
adapter: mysql2
database: db_name_name
username: root
password:
host: localhost
socket: /tmp/mysql.sock
Idź do terminalu i napisać:
rails new <project_name> -d mysql
Jeżeli nie masz jeszcze swoją aplikację, wystarczy przejść do cmd (dla systemu Windows) lub terminal (dla systemów Linux/Unix) i wpisz następujące polecenie, aby utworzyć aplikację szynach z bazy danych MySQL:
$rails new <your_app_name> -d mysql
działa na wszystko powyżej szyny Version 3. Jeśli masz już swoją aplikację, a następnie można wykonać jedną z następujących czynności: 2
- Tworzenie another_nam e aplikacja z bazą danych mysql, przejdź do cd another_name/config/i skopiuj plik database.yml z tej nowej aplikacji. Wklej go do database.yml aplikacji your_app_name. Ale upewnij się, aby zmienić nazwy baz danych i ustawić nazwę użytkownika/hasło do bazy danych odpowiednio w pliku database.yml po tym.
LUB
- idź do cd your_app_name/config/i otwarte database.yml. Zmiana nazwy w następujący sposób:
rozwój:
adapter: mysql2
bazie: db_name_name
nazwa użytkownika: root
hasło:
host: localhost
gniazdo: /tmp/mysql.sock
Co więcej, usuń gem 'sqlite3' z Gemfile i dodaj klej 'mysql2'
Wystarczy przejść do szyny konsoli i wpisz:
rails new YOURAPPNAME -d mysql
Najpierw upewnij się, że mysql gem jest zainstalowany, jeśli nie?niż typu następujące polecenia w konsoli
gem install mysql2
niż tworzyć nową aplikację szyn i ustawić bazę danych MySQL jako domyślnej bazy danych, wpisując następującą komendę w konsoli
rails new app-name -d mysql
chcesz zamiast tego dodać klejnot do Gemfile. – Riccardo
W nowym projekcie, łatwe peasy:
rails new your_new_project_name -d mysql
W przypadku istniejącego projektu, zdecydowanie trudniejsze. To dało mi wiele problemów z istniejącymi projektami szyn. Ten rodzaj pracy ze mną:
# 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
Jest to pomocne; jak inne odpowiedzi po prostu użyj generatora. Ta odpowiedź służy do dodania MySQL do aplikacji po jej utworzeniu, albo do zastąpienia istniejącej bazy danych (na przykład SQLite), albo do utworzenia dodatkowej bazy danych. Ponadto, mysql2 wydaje się być najlepszym narzędziem dla Railsów. – rcd
będziesz także musiał zaktualizować Gemfile; usuń 'gem 'sqlite3'' i dodaj' gem' mysql2'' – RGB