Was ist Ruby on Rails?
() translation by (you can also view the original English article)



Bildnachweis: RubyonRails.org
Ein Web Development Framework für Puristen
Bereits 1995 veröffentlichte Yukihiro Matsumoto Ruby 0.95 als reine, objektorientierte (OO) Allzweck-Programmiersprache:
Als Sprachwahnsinniger und OO-Fan seit 15 Jahren wollte ich unbedingt eine echte objektorientierte, benutzerfreundliche Skriptsprache benutzen. Ich suchte, konnte aber keinen finden. Also habe ich beschlossen, sie selbst zu entwickeln. - Y. Matsumoto
Im Jahr 2004 veröffentlichte David Heinemeier Hansson die erste Version von Ruby on Rails als Webanwendungsframework, mit dem er seine Teamverwaltungsanwendung Basecamp startete. Er eröffnete Ruby on Rails im Jahr 2005 und Apple veröffentlichte es 2007 mit OS X Leopard.
In diesem Tutorial bezeichne ich Ruby on Rails kurz als Rails. Einige Leute benutzen auch RoR.
Rails wird von einer Vielzahl beliebter Webanwendungen verwendet, die Sie vielleicht kennen, z. B. GitHub, Shopify, Airbnb, Twitch, SoundCloud, Hulu, Zendesk, Square und Highrise. Es wurde jedoch wegen Einschränkungen der Skalierbarkeit kritisiert, insbesondere bei Twitter, das nach und nach viele seiner Dienste auf andere Plattformen verlagern musste. Allerdings hat Twitter hohe Transaktionsraten und Skalierbarkeitsprobleme.



In diesem Tutorial beantworte ich die Frage "Was ist Ruby on Rails?" und führen Sie in die Grundlagen des Programmierframeworks ein, damit Sie damit experimentieren können.
Bevor wir anfangen, denken Sie bitte daran, dass ich an den folgenden Diskussionen teilnehme. Wenn Sie eine Frage oder einen Themenvorschlag haben, schreiben Sie bitte unten einen Kommentar oder kontaktieren Sie mich auf Twitter @reifman.
Was ist Ruby on Rails?
Ruby on Rails ist ein beliebtes, objektorientiertes Open-Source-Webentwicklungsframework, das von vielen Programmierern und Anwendungsanbietern verwendet wird. Es basiert auch auf einem MVC-Ansatz (Model View Controller).
Modelle werden den Datenbanken und Funktionen einem Objekt in der Anwendung zugeordnet, z. B. Benutzern. Rails bietet eine Standardkonvention für Namens- und Dateiverzeichnisstrukturen, die die Programmierung vereinfacht, aber auch automatisierte Lösungen für die Erstellung von Funktionen bietet, die als Gerüste bezeichnet werden. Es stellt auch eine gemeinsame Umgebung für Entwickler sicher, in der sie zusammenarbeiten und voneinander profitieren können.
Mit Convention over Configuration optimieren wir das Glück der Programmierer.
Der Controller verwaltet Anforderungen hauptsächlich zwischen dem Benutzer und dem Server, sammelt Daten von Modellen und gibt sie über View-Dateien an den Benutzer zurück.
Ansichten sind im Wesentlichen programmatische HTML-Dateien, die die Seite mit den dynamischen Daten auslegen.
Rails-Konventionen führen Entwickler dazu, sich auf RESTful-Routing zu verlassen. Steueraktionen im Allgemeinen, z. neu, erstellen, bearbeiten, aktualisieren, zerstören, anzeigen, indizieren usw. Auf diese Weise können Benutzer und das System mit verschiedenen Funktionen interagieren
Zusammen werden die MVC-Funktionen von Rails als Action Pack bezeichnet, d. H. ActionController, ActionView und ActiveRecord, letzteres für die Interaktion mit der Datenbank.



Der Gründer von Rails, Hansson, liefert eine prinzipielle Theologie hinter dem Rahmen namens The Ruby on Rails Doctrine.



Die Ruby on Rails-Doktrin
Die Rails-Doktrin besteht aus acht Grundsätzen:
- Optimieren Sie für das Glück des Programmierers: Wann immer möglich, versucht Ruby, die Wünsche des Programmierers zu erfüllen.
- Konvention über Konfiguration: Durch die Auswahl von standardmäßigen, plattformweiten Standardoptionen können Programmierer schneller und einfacher mit neuen Projekten beginnen.
- Das Menü ist omakase: Das Team hinter Ruby on Rails hat die besten Werkzeugs und Ansätze ausgewählt, und jeder wird mit ihnen zufriedener sein.
- Kein Paradigma: Am Ende bietet Rails flexible Lösungen für verschiedene Anlässe.
- Erhabener schöner Code: ein Hauptaugenmerk auf Ästhetik und Einfachheit.
- Wertintegrierte Systeme: eine Ausrichtung auf das vollständige Bewusstsein und den Zusammenhalt aller Werkzeugs, die zum Erstellen von Anwendungen und Lösungen erforderlich sind.
- Fortschritte in Bezug auf Stabilität: Bereitschaft, Risiken einzugehen, um die Plattform voranzubringen.
- Schieben Sie ein großes Zelt hoch: Begrüßen Sie eine große Gemeinschaft von Teilnehmern und ihren Stimmen, um die Vision festzulegen.
Die Hauptleistung von Rails bestand darin, einen starken Stamm um eine breite Palette ketzerischer Gedanken über die Natur des Programmierens und der Programmierer zu vereinen und zu kultivieren. - David Heinemeier Hansson
Hier sind die wichtigsten Mitwirkenden von Rails (Gründer David Hansson ist oben links):



Und sie haben eine herzliche, einladende Gemeinschaft:
- Der Ruby on Rails: Talk-Mailingliste
- Das Ruby on Rails StackOverflow-Q & A-Tag
- Der IRC-Kanal #rubyonrails auf irc.freenode.net
- Eine jährliche RailsConf-Konferenz für Meetups in der realen Welt
Vielleicht möchten Sie weiter eintauchen. Hier erfahren Sie, wie Sie beginnen können.
Erste Schritte mit Ruby on Rails
Rails verfügt über eine Sammlung herausragender Dokumentationen. Hier ist ein Blick auf die Kurzanleitung:



Die Anleitung führt Sie durch eine allgemeine Einführung, eine grundlegende Installation und einige Anfänger-Rails-Programmierungen.
Ruby on Rails installieren
Mac-Benutzer finden Ruby vorinstalliert. Windows-Benutzer können RailsInstaller auschecken. Für eine vollständige Rails-Installation unter OS X empfiehlt das Handbuch Tokaido. Alternativ schlägt Daniel Kehoe vor, Installationsprogramme mit einem Klick zu vermeiden, und bietet detaillierte Anweisungen für die Installation von Mac OS X El Capitan.
Erfahrene Rails-Entwickler berichten auch, dass die Entwicklung von Webanwendungen dadurch mehr Spaß macht. - Rails Handbuch
Das brauchte Zeit, seit ich Rails ausgeführt hatte, und die Neuinstallation auf meinem späten Mac-Modell auf El Capitan war zeitaufwändig.
Überprüfen Sie die Installation von Ruby
Unter OS X wird Ruby vorinstalliert:
1 |
$ ruby -v |
2 |
ruby 2.0.0p645 (2015-04-13 revision 50299) [universal.x86_64-darwin15] |
Installieren Sie das Rails Framework
Die Installation meiner Rails dauerte ungefähr 10 bis 15 Minuten (haben Sie etwas Geduld):
1 |
$ sudo gem install rails |
2 |
Password: |
3 |
Fetching: thread_safe-0.3.5.gem (100%) |
4 |
Successfully installed thread_safe-0.3.5 |
5 |
Fetching: tzinfo-1.2.2.gem (100%) |
6 |
Successfully installed tzinfo-1.2.2 |
7 |
Fetching: minitest-5.8.4.gem (100%) |
8 |
Successfully installed minitest-5.8.4 |
9 |
Fetching: activesupport-4.2.5.1.gem (100%) |
10 |
Successfully installed activesupport-4.2.5.1 |
11 |
Fetching: rack-1.6.4.gem (100%) |
12 |
Successfully installed rack-1.6.4 |
13 |
Fetching: rack-test-0.6.3.gem (100%) |
14 |
Successfully installed rack-test-0.6.3 |
15 |
Fetching: mini_portile2-2.0.0.gem (100%) |
16 |
Successfully installed mini_portile2-2.0.0 |
17 |
Fetching: nokogiri-1.6.7.2.gem (100%) |
18 |
Building native extensions. This could take a while...
|
19 |
Successfully installed nokogiri-1.6.7.2 |
20 |
Fetching: loofah-2.0.3.gem (100%) |
21 |
Successfully installed loofah-2.0.3 |
22 |
Fetching: rails-html-sanitizer-1.0.3.gem (100%) |
23 |
Successfully installed rails-html-sanitizer-1.0.3 |
24 |
Fetching: rails-deprecated_sanitizer-1.0.3.gem (100%) |
25 |
Successfully installed rails-deprecated_sanitizer-1.0.3 |
26 |
Fetching: rails-dom-testing-1.0.7.gem (100%) |
27 |
Successfully installed rails-dom-testing-1.0.7 |
28 |
Fetching: builder-3.2.2.gem (100%) |
29 |
Successfully installed builder-3.2.2 |
30 |
Fetching: erubis-2.7.0.gem (100%) |
31 |
Successfully installed erubis-2.7.0 |
32 |
Fetching: actionview-4.2.5.1.gem (100%) |
33 |
Successfully installed actionview-4.2.5.1 |
34 |
Fetching: actionpack-4.2.5.1.gem (100%) |
35 |
Successfully installed actionpack-4.2.5.1 |
36 |
Fetching: activemodel-4.2.5.1.gem (100%) |
37 |
Successfully installed activemodel-4.2.5.1 |
38 |
Fetching: arel-6.0.3.gem (100%) |
39 |
Successfully installed arel-6.0.3 |
40 |
Fetching: activerecord-4.2.5.1.gem (100%) |
41 |
Successfully installed activerecord-4.2.5.1 |
42 |
Fetching: globalid-0.3.6.gem (100%) |
43 |
Successfully installed globalid-0.3.6 |
44 |
Fetching: activejob-4.2.5.1.gem (100%) |
45 |
Successfully installed activejob-4.2.5.1 |
46 |
Fetching: mime-types-2.99.gem (100%) |
47 |
Successfully installed mime-types-2.99 |
48 |
Fetching: mail-2.6.3.gem (100%) |
49 |
Successfully installed mail-2.6.3 |
50 |
Fetching: actionmailer-4.2.5.1.gem (100%) |
51 |
Successfully installed actionmailer-4.2.5.1 |
52 |
Fetching: thor-0.19.1.gem (100%) |
53 |
Successfully installed thor-0.19.1 |
54 |
Fetching: railties-4.2.5.1.gem (100%) |
55 |
Successfully installed railties-4.2.5.1 |
56 |
Fetching: bundler-1.11.2.gem (100%) |
57 |
Successfully installed bundler-1.11.2 |
58 |
Fetching: concurrent-ruby-1.0.0.gem (100%) |
59 |
Successfully installed concurrent-ruby-1.0.0 |
60 |
Fetching: sprockets-3.5.2.gem (100%) |
61 |
Successfully installed sprockets-3.5.2 |
62 |
Fetching: sprockets-rails-3.0.1.gem (100%) |
63 |
Successfully installed sprockets-rails-3.0.1 |
64 |
Fetching: rails-4.2.5.1.gem (100%) |
65 |
Successfully installed rails-4.2.5.1 |
66 |
Parsing documentation for thread_safe-0.3.5
|
67 |
Installing ri documentation for thread_safe-0.3.5
|
68 |
Parsing documentation for tzinfo-1.2.2
|
69 |
Installing ri documentation for tzinfo-1.2.2
|
70 |
Parsing documentation for minitest-5.8.4
|
71 |
Installing ri documentation for minitest-5.8.4
|
72 |
Parsing documentation for activesupport-4.2.5.1
|
73 |
unable to convert "\x84" from ASCII-8BIT to UTF-8 for lib/active_support/values/unicode_tables.dat, skipping |
74 |
Installing ri documentation for activesupport-4.2.5.1
|
75 |
Parsing documentation for rack-1.6.4
|
76 |
Installing ri documentation for rack-1.6.4
|
77 |
Parsing documentation for rack-test-0.6.3
|
78 |
Installing ri documentation for rack-test-0.6.3
|
79 |
Parsing documentation for mini_portile2-2.0.0
|
80 |
Installing ri documentation for mini_portile2-2.0.0
|
81 |
Parsing documentation for nokogiri-1.6.7.2
|
82 |
unable to convert "\xCA" from ASCII-8BIT to UTF-8 for lib/nokogiri/nokogiri.bundle, skipping |
83 |
Installing ri documentation for nokogiri-1.6.7.2
|
84 |
Parsing documentation for loofah-2.0.3
|
85 |
Installing ri documentation for loofah-2.0.3
|
86 |
Parsing documentation for rails-html-sanitizer-1.0.3
|
87 |
Installing ri documentation for rails-html-sanitizer-1.0.3
|
88 |
Parsing documentation for rails-deprecated_sanitizer-1.0.3
|
89 |
Installing ri documentation for rails-deprecated_sanitizer-1.0.3
|
90 |
Parsing documentation for rails-dom-testing-1.0.7
|
91 |
Installing ri documentation for rails-dom-testing-1.0.7
|
92 |
Parsing documentation for builder-3.2.2
|
93 |
Installing ri documentation for builder-3.2.2
|
94 |
Parsing documentation for erubis-2.7.0
|
95 |
Installing ri documentation for erubis-2.7.0
|
96 |
Parsing documentation for actionview-4.2.5.1
|
97 |
Installing ri documentation for actionview-4.2.5.1
|
98 |
Parsing documentation for actionpack-4.2.5.1
|
99 |
Installing ri documentation for actionpack-4.2.5.1
|
100 |
Parsing documentation for activemodel-4.2.5.1
|
101 |
Installing ri documentation for activemodel-4.2.5.1
|
102 |
Parsing documentation for arel-6.0.3
|
103 |
Installing ri documentation for arel-6.0.3
|
104 |
Parsing documentation for activerecord-4.2.5.1
|
105 |
Installing ri documentation for activerecord-4.2.5.1
|
106 |
Parsing documentation for globalid-0.3.6
|
107 |
Installing ri documentation for globalid-0.3.6
|
108 |
Parsing documentation for activejob-4.2.5.1
|
109 |
Installing ri documentation for activejob-4.2.5.1
|
110 |
Parsing documentation for mime-types-2.99
|
111 |
Installing ri documentation for mime-types-2.99
|
112 |
Parsing documentation for mail-2.6.3
|
113 |
Installing ri documentation for mail-2.6.3
|
114 |
Parsing documentation for actionmailer-4.2.5.1
|
115 |
Installing ri documentation for actionmailer-4.2.5.1
|
116 |
Parsing documentation for thor-0.19.1
|
117 |
Installing ri documentation for thor-0.19.1
|
118 |
Parsing documentation for railties-4.2.5.1
|
119 |
Installing ri documentation for railties-4.2.5.1
|
120 |
Parsing documentation for bundler-1.11.2
|
121 |
Installing ri documentation for bundler-1.11.2
|
122 |
Parsing documentation for concurrent-ruby-1.0.0
|
123 |
Installing ri documentation for concurrent-ruby-1.0.0
|
124 |
Parsing documentation for sprockets-3.5.2
|
125 |
Installing ri documentation for sprockets-3.5.2
|
126 |
Parsing documentation for sprockets-rails-3.0.1
|
127 |
Installing ri documentation for sprockets-rails-3.0.1
|
128 |
Parsing documentation for rails-4.2.5.1
|
129 |
unable to convert "\xFF" from ASCII-8BIT to UTF-8 for guides/assets/images/akshaysurve.jpg, skipping |
130 |
unable to convert "\x89" from ASCII-8BIT to UTF-8 for guides/assets/images/belongs_to.png, skipping |
131 |
unable to convert "\xF4" from ASCII-8BIT to UTF-8 for guides/assets/images/book_icon.gif, skipping |
132 |
unable to convert "\x91" from ASCII-8BIT to UTF-8 for guides/assets/images/bullet.gif, skipping |
133 |
... |
134 |
...continued on and on... |
135 |
... |
136 |
unable to convert "\x80" from ASCII-8BIT to UTF-8 for guides/assets/images/tab_yellow.gif, skipping |
137 |
unable to convert "\x89" from ASCII-8BIT to UTF-8 for guides/assets/images/tab_yellow.png, skipping |
138 |
unable to convert "\xFF" from ASCII-8BIT to UTF-8 for guides/assets/images/vijaydev.jpg, skipping |
139 |
Installing ri documentation for rails-4.2.5.1
|
140 |
31 gems installed |
Aber es hat funktioniert:
1 |
$ rails --version |
2 |
Rails 4.2.5.1 |
Erstellen Sie Ihre Anwendungs- und Framework-Instanz
Dann habe ich eine neue Anwendung namens Blog erstellt:
1 |
$ rails new blog
|
2 |
create |
3 |
create README.rdoc |
4 |
create Rakefile |
5 |
create config.ru |
6 |
create .gitignore |
7 |
create Gemfile |
8 |
create app |
9 |
create app/assets/javascripts/application.js |
10 |
create app/assets/stylesheets/application.css |
11 |
create app/controllers/application_controller.rb |
12 |
create app/helpers/application_helper.rb |
13 |
create app/views/layouts/application.html.erb |
14 |
create app/assets/images/.keep |
15 |
create app/mailers/.keep |
16 |
create app/models/.keep |
17 |
create app/controllers/concerns/.keep |
18 |
create app/models/concerns/.keep |
19 |
create bin |
20 |
create bin/bundle |
21 |
create bin/rails |
22 |
create bin/rake |
23 |
create bin/setup |
24 |
create config |
25 |
create config/routes.rb |
26 |
create config/application.rb |
27 |
create config/environment.rb |
28 |
create config/secrets.yml |
29 |
create config/environments |
30 |
create config/environments/development.rb |
31 |
create config/environments/production.rb |
32 |
create config/environments/test.rb |
33 |
create config/initializers |
34 |
create config/initializers/assets.rb |
35 |
create config/initializers/backtrace_silencers.rb |
36 |
create config/initializers/cookies_serializer.rb |
37 |
create config/initializers/filter_parameter_logging.rb |
38 |
create config/initializers/inflections.rb |
39 |
create config/initializers/mime_types.rb |
40 |
create config/initializers/session_store.rb |
41 |
create config/initializers/wrap_parameters.rb |
42 |
create config/locales |
43 |
create config/locales/en.yml |
44 |
create config/boot.rb |
45 |
create config/database.yml |
46 |
create db |
47 |
create db/seeds.rb |
48 |
create lib |
49 |
create lib/tasks |
50 |
create lib/tasks/.keep |
51 |
create lib/assets |
52 |
create lib/assets/.keep |
53 |
create log |
54 |
create log/.keep |
55 |
create public |
56 |
create public/404.html |
57 |
create public/422.html |
58 |
create public/500.html |
59 |
create public/favicon.ico |
60 |
create public/robots.txt |
61 |
create test/fixtures
|
62 |
create test/fixtures/.keep
|
63 |
create test/controllers
|
64 |
create test/controllers/.keep
|
65 |
create test/mailers
|
66 |
create test/mailers/.keep
|
67 |
create test/models
|
68 |
create test/models/.keep
|
69 |
create test/helpers
|
70 |
create test/helpers/.keep
|
71 |
create test/integration
|
72 |
create test/integration/.keep
|
73 |
create test/test_helper.rb
|
74 |
create tmp/cache |
75 |
create tmp/cache/assets |
76 |
create vendor/assets/javascripts |
77 |
create vendor/assets/javascripts/.keep |
78 |
create vendor/assets/stylesheets |
79 |
create vendor/assets/stylesheets/.keep |
80 |
run bundle install
|
81 |
|
82 |
|
83 |
Your user account isn't allowed to install to the system Rubygems.
|
84 |
You can cancel this installation and run:
|
85 |
|
86 |
bundle install --path vendor/bundle
|
87 |
|
88 |
to install the gems into ./vendor/bundle/, or you can enter your password
|
89 |
and install the bundled gems to Rubygems using sudo.
|
90 |
|
91 |
Password:
|
92 |
Fetching gem metadata from https://rubygems.org/...........
|
93 |
Fetching version metadata from https://rubygems.org/...
|
94 |
Fetching dependency metadata from https://rubygems.org/..
|
95 |
Resolving dependencies....
|
96 |
Rubygems 2.0.14 is not threadsafe, so your gems will be installed one at a time. Upgrade to Rubygems 2.1.0 or higher to enable parallel gem installation.
|
97 |
Installing rake 10.5.0
|
98 |
Using i18n 0.7.0
|
99 |
Installing json 1.8.3 with native extensions
|
100 |
Using minitest 5.8.4
|
101 |
Using thread_safe 0.3.5
|
102 |
Using builder 3.2.2
|
103 |
Using erubis 2.7.0
|
104 |
Using mini_portile2 2.0.0
|
105 |
Using rack 1.6.4
|
106 |
Using mime-types 2.99
|
107 |
Using arel 6.0.3
|
108 |
Installing debug_inspector 0.0.2 with native extensions
|
109 |
Using bundler 1.11.2
|
110 |
Installing byebug 8.2.2 with native extensions
|
111 |
Installing coffee-script-source 1.10.0
|
112 |
Installing execjs 2.6.0
|
113 |
Using thor 0.19.1
|
114 |
Using concurrent-ruby 1.0.0
|
115 |
Installing multi_json 1.11.2
|
116 |
Installing sass 3.4.21
|
117 |
Installing tilt 2.0.2
|
118 |
Installing spring 1.6.3
|
119 |
Installing sqlite3 1.3.11 with native extensions
|
120 |
Installing rdoc 4.2.1
|
121 |
Using tzinfo 1.2.2
|
122 |
Using nokogiri 1.6.7.2
|
123 |
Using rack-test 0.6.3
|
124 |
Using mail 2.6.3
|
125 |
Installing binding_of_caller 0.7.2 with native extensions
|
126 |
Installing coffee-script 2.4.1
|
127 |
Installing uglifier 2.7.2
|
128 |
Using sprockets 3.5.2
|
129 |
Installing sdoc 0.4.1
|
130 |
Using activesupport 4.2.5.1
|
131 |
Using loofah 2.0.3
|
132 |
Using rails-deprecated_sanitizer 1.0.3
|
133 |
Using globalid 0.3.6
|
134 |
Using activemodel 4.2.5.1
|
135 |
Installing jbuilder 2.4.0
|
136 |
Using rails-html-sanitizer 1.0.3
|
137 |
Using rails-dom-testing 1.0.7
|
138 |
Using activejob 4.2.5.1
|
139 |
Using activerecord 4.2.5.1
|
140 |
Using actionview 4.2.5.1
|
141 |
Using actionpack 4.2.5.1
|
142 |
Using actionmailer 4.2.5.1
|
143 |
Using railties 4.2.5.1
|
144 |
Using sprockets-rails 3.0.1
|
145 |
Installing coffee-rails 4.1.1
|
146 |
Installing jquery-rails 4.1.0
|
147 |
Using rails 4.2.5.1
|
148 |
Installing sass-rails 5.0.4
|
149 |
Installing web-console 2.3.0
|
150 |
Installing turbolinks 2.5.3
|
151 |
Bundle complete! 12 Gemfile dependencies, 54 gems now installed.
|
152 |
Use `bundle show [gemname]` to see where a bundled gem is installed.
|
153 |
Post-install message from rdoc:
|
154 |
Depending on your version of ruby, you may need to install ruby rdoc/ri data:
|
155 |
|
156 |
<= 1.8.6 : unsupported
|
157 |
= 1.8.7 : gem install rdoc-data; rdoc-data --install
|
158 |
= 1.9.1 : gem install rdoc-data; rdoc-data --install
|
159 |
>= 1.9.2 : nothing to do! Yay!
|
160 |
run bundle exec spring binstub --all
|
161 |
Warning: You're using Rubygems 2.0.14 with Spring. Upgrade to at least Rubygems 2.1.0 and run `gem pristine --all` for better startup performance. |
162 |
* bin/rake: spring inserted
|
163 |
* bin/rails: spring inserted
|
Sie können die Verzeichnisstruktur des Rails-Webanwendungsframeworks in Ihrer Anwendung durchsuchen:
1 |
$ cd blog |
2 |
$ ls |
3 |
Gemfile Rakefile config lib test
|
4 |
Gemfile.lock app config.ru log tmp |
5 |
README.rdoc bin db public vendor |
Hier ist eine Ansicht aus dem Handbuch Erste Schritte, die zeigt, wie sich Rails bei der Konfiguration auf Konventionen stützt:



Starten Sie Ihren Server
Schließlich können Sie Ihren Server über eine Befehlszeile starten:
1 |
$ bin/rails server
|
2 |
Warning: You're using Rubygems 2.0.14 with Spring. Upgrade to at least Rubygems 2.1.0 and run `gem pristine --all` for better startup performance.
|
3 |
=> Booting WEBrick
|
4 |
=> Rails 4.2.5.1 application starting in development on http://localhost:3000
|
5 |
=> Run `rails server -h` for more startup options
|
6 |
=> Ctrl-C to shutdown server
|
7 |
[2016-02-05 18:14:05] INFO WEBrick 1.3.1
|
8 |
[2016-02-05 18:14:05] INFO ruby 2.0.0 (2015-04-13) [universal.x86_64-darwin15]
|
9 |
[2016-02-05 18:14:05] INFO WEBrick::HTTPServer#start: pid=30576 port=3000
|
Besuchen Sie Ihre Bewerbung
Gehen Sie in Ihrem Browser zu http://localhost:3000, und Sie sollten Ihre Standardhomepage für eine generische Rails-Anwendung sehen:



Ich muss sagen, ich wünschte, das alles wäre ein bisschen sauberer. Trotzdem gibt es einige wunderbare Community-Ressourcen, die Ihnen beim Wachstum helfen.
Tiefer gehen
Hier ist ein Beispiel für einen kostenlosen GoRails-Screencast, der die grundlegende Framework-Anwendungsarchitektur im obigen Verzeichnis abdeckt:
Der Rails Guide selbst führt Sie durch eine Reihe von Anfangsschritten:



Insgesamt gibt es eine Vielzahl von schriftlichen und Screencast-Tutorials, die Sie anleiten.
Abschluss
Wenn Sie von der Qualität von Ruby on Rails und seiner Community fasziniert sind, hoffe ich, dass Sie diese Einführung als hilfreichen Ausgangspunkt empfunden haben. Vielleicht haben Sie sogar die obige Installation versucht.
In jüngerer Zeit bin ich fasziniert von Apples Open-Sourcing von Swift, einem aufregenden Einstieg in den objektorientierten Programmiersprachenraum, ähnlich wie Ruby mit einem ähnlichen langfristigen Potenzial wie Rails.
Während ich in der Vergangenheit mit Rails gearbeitet habe, hatte ich auch Probleme mit dem Hosting und mit der Erweiterung der Funktionalität - ich fand das Hosting auch teurer. Ich fühle mich weiterhin am wohlsten mit Yii, worüber Sie in unserer Envato Tuts+ Yii2-Programming Series lesen können. Und mit dem Aufkommen von PHP 7 sieht die Zukunft für PHP-basierte Programmierframeworks schneller und besser aus.
Wenn Sie Fragen haben, posten Sie diese bitte unten. Oder Sie können mich auf Twitter @reifman kontaktieren. Auf meiner Envato Tuts+ Instructor-Seite finden Sie weitere Tutorials, die ich geschrieben habe, z. B. Verwenden von sozialen Medien zum Auffinden von Augenzeugen, in denen die API von Instagram und Twitter hervorgehoben werden.