Jak skonfigurować projekt Ruby on Rails v7 z frontendem React na Ubuntu 20.04

Jak skonfigurować projekt Ruby on Rails v7 z frontendem React na Ubuntu 20.04

Wprowadzenie

Ruby on Rails i React to popularne technologie do tworzenia nowoczesnych aplikacji internetowych. Rails, framework MVC dla Ruby, zapewnia bazę kodu back-end, podczas gdy React, biblioteka JavaScript, obsługuje front-end. Integracja tych technologii pozwala na tworzenie responsywnych i skalowalnych aplikacji. W tym artykule przedstawimy kompleksowy przewodnik dotyczący konfigurowania projektu Ruby on Rails v7 z frontendem React na serwerze Ubuntu 20.04.

Wymagania

* Serwer Ubuntu 20.04
* Ruby 2.7 lub nowszy
* Node.js 14 lub nowszy
* Yarn lub npm
* BAZA DANYCH PostgreSQL (opcjonalnie)

Konfiguracja projektu Ruby on Rails

1. Instalacja Ruby on Rails

Najpierw zainstaluj Ruby on Rails na swoim serwerze:


$ sudo apt-get install ruby-full ruby-bundler
$ gem install rails -v 7.0.3

2. Utworzenie nowego projektu Rails

Utwórz nowy projekt Rails za pomocą następującego polecenia:


$ rails new rails-react-app --api

3. Konfiguracja bazy danych (opcjonalnie)

Jeśli chcesz używać bazy danych PostgreSQL, zainstaluj ją i skonfiguruj:


$ sudo apt-get install postgresql postgresql-contrib
$ sudo service postgresql start

W pliku config/database.yml Railsa zaktualizuj ustawienia bazy danych zgodnie z potrzebami.

Konfiguracja frontu React

1. Instalacja React i Create React App

Zainstaluj React i Create React App za pomocą Yarn lub npm:


$ yarn global add create-react-app
$ create-react-app client

2. Konfiguracja webpack

Zmodyfikuj plik webpack.config.js w katalogu client React. Dodaj następującą konfigurację, aby umożliwić React i Rails interakcję za pośrednictwem API REST:


module.exports = {
...
devServer: {
proxy: {
'/api': 'http://localhost:3000'
}
},
...
};

3. Konfiguracja routingu

Utwórz nowy komponent App.js w katalogu client/src React:


import React from 'react';

const App = () => {
return (
<div>
<h1>Witaj w aplikacji Rails-React!</h1>
</div>
);
};

export default App;

W pliku index.js React zaktualizuj routing, aby uwzględnić komponent App:


import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';

ReactDOM.render(<App />, document.getElementById('root'));

Uruchamianie aplikacji

1. Uruchomienie serwera Rails

Uruchom serwer Rails w osobnym terminalu:


$ rails s

2. Uruchomienie klienta React

W katalogu client, uruchom klienta React w trybie rozwoju:


$ yarn start

3. Testowanie integracji

W przeglądarce otwórz adres http://localhost:3000. Powinieneś zobaczyć stronę główną z komunikatem „Witaj w aplikacji Rails-React!”.

Rozszerzanie aplikacji

Po skonfigurowaniu podstawowej integracji możesz rozszerzyć swoją aplikację, dodając modele, kontrolery i widoki w Rails, a także komponenty i stan w React. Zalecamy zapoznanie się z dokumentacją Rails i React, aby dowiedzieć się więcej o tych technologiach.

Wniosek

W tym artykule zaprezentowaliśmy kompletny przewodnik dotyczący konfigurowania projektu Ruby on Rails v7 z frontendem React na Ubuntu 20.04. Integracja tych technologii zapewnia potężne połączenie do tworzenia dynamicznych i interaktywnych aplikacji internetowych. Dzięki przestrzeganiu tych kroków możesz rozpocząć budowanie własnych aplikacji Rails-React i wykorzystać ich możliwości.

Często zadawane pytania

1. Czy mogę używać innej wersji Ruby on Rails niż v7?

Tak, możesz użyć wcześniejszej wersji Rails, takiej jak v6 lub v5, ale zaleca się stosowanie najnowszej stabilnej wersji, aby uzyskać najnowsze funkcje i poprawki błędów.

2. Czy mogę używać innego serwera bazy danych niż PostgreSQL?

Tak, Rails obsługuje inne serwery baz danych, takie jak MySQL, SQLite i MongoDB. Zaktualizuj ustawienia bazy danych w pliku config/database.yml zgodnie z zastosowanym serwerem.

3. Czy mogę wdrożyć aplikację na serwerze produkcyjnym?

Tak, możesz wdrożyć aplikację na serwerze produkcyjnym za pomocą takich usług jak Heroku, DigitalOcean lub AWS. Upewnij się, że skonfigurowałeś odpowiednie zmienne środowiskowe i ustawienia zabezpieczeń.

4. Jak debugować problemy z integracją Rails-React?

Sprawdź dzienniki Railsa i konsolę przeglądarki, aby znaleźć wszelkie błędy lub ostrzeżenia. Możesz także użyć narzędzia takich jak Redux DevTools lub React Profiler, aby debugować stan i wydajność.

5. Gdzie mogę znaleźć więcej zasobów dotyczących Rails-React?

Oficjalne strony dokumentacji Rails i React są doskonałymi źródłami informacji. Możesz także znaleźć liczne samouczki, artykuły i fora poświęcone integracji Rails-React.

6. Czy muszę używać Yarn do instalacji React?

Nie, możesz również użyć npm do zainstalowania React i Create React App. Wybierz preferowaną metodę zarządzania pakietami.

7. Jak dostosować webpack do swoich potrzeb?

Plik webpack.config.js pozwala na dostosowanie konfiguracji webpacka. Możesz dodać wtyczki, dostosować zasady ładowania i zoptymalizować kodowanie dla swojej aplikacji.

8. Czy mogę używać innych frameworków front-endowych z Rails?

Tak, Rails jest elastyczny i może być zintegrowany z różnymi frameworkami front-endowymi, takimi jak Vue.js, Angular i Svelte. Wybierz ten, który najlepiej odpowiada Twoim potrzebom i preferencjom.