sinatra 1.4.6 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of sinatra might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/AUTHORS.md +5 -2
- data/{CHANGES → CHANGELOG.md} +126 -46
- data/CONTRIBUTING.md +100 -0
- data/Gemfile +12 -17
- data/LICENSE +5 -2
- data/MAINTENANCE.md +42 -0
- data/README.de.md +711 -466
- data/README.es.md +206 -171
- data/README.fr.md +370 -344
- data/README.hu.md +44 -10
- data/README.ja.md +300 -210
- data/README.ko.md +230 -191
- data/README.md +675 -528
- data/README.pt-br.md +149 -115
- data/README.pt-pt.md +65 -65
- data/README.ru.md +198 -97
- data/README.zh.md +1943 -1237
- data/Rakefile +72 -49
- data/SECURITY.md +35 -0
- data/lib/sinatra/base.rb +141 -207
- data/lib/sinatra/indifferent_hash.rb +150 -0
- data/lib/sinatra/main.rb +1 -0
- data/lib/sinatra/show_exceptions.rb +70 -56
- data/lib/sinatra/version.rb +1 -1
- data/sinatra.gemspec +19 -7
- metadata +32 -163
- data/test/asciidoctor_test.rb +0 -72
- data/test/base_test.rb +0 -167
- data/test/builder_test.rb +0 -91
- data/test/coffee_test.rb +0 -96
- data/test/compile_test.rb +0 -183
- data/test/contest.rb +0 -91
- data/test/creole_test.rb +0 -65
- data/test/delegator_test.rb +0 -160
- data/test/encoding_test.rb +0 -20
- data/test/erb_test.rb +0 -116
- data/test/extensions_test.rb +0 -98
- data/test/filter_test.rb +0 -487
- data/test/haml_test.rb +0 -109
- data/test/helper.rb +0 -132
- data/test/helpers_test.rb +0 -1917
- data/test/integration/app.rb +0 -79
- data/test/integration_helper.rb +0 -236
- data/test/integration_test.rb +0 -104
- data/test/less_test.rb +0 -69
- data/test/liquid_test.rb +0 -77
- data/test/mapped_error_test.rb +0 -285
- data/test/markaby_test.rb +0 -80
- data/test/markdown_test.rb +0 -85
- data/test/mediawiki_test.rb +0 -68
- data/test/middleware_test.rb +0 -68
- data/test/nokogiri_test.rb +0 -67
- data/test/public/favicon.ico +0 -0
- data/test/rabl_test.rb +0 -89
- data/test/rack_test.rb +0 -45
- data/test/radius_test.rb +0 -59
- data/test/rdoc_test.rb +0 -66
- data/test/readme_test.rb +0 -130
- data/test/request_test.rb +0 -100
- data/test/response_test.rb +0 -63
- data/test/result_test.rb +0 -76
- data/test/route_added_hook_test.rb +0 -59
- data/test/routing_test.rb +0 -1412
- data/test/sass_test.rb +0 -115
- data/test/scss_test.rb +0 -88
- data/test/server_test.rb +0 -56
- data/test/settings_test.rb +0 -582
- data/test/sinatra_test.rb +0 -12
- data/test/slim_test.rb +0 -102
- data/test/static_test.rb +0 -236
- data/test/streaming_test.rb +0 -149
- data/test/stylus_test.rb +0 -90
- data/test/templates_test.rb +0 -382
- data/test/textile_test.rb +0 -65
- data/test/views/a/in_a.str +0 -1
- data/test/views/ascii.erb +0 -2
- data/test/views/b/in_b.str +0 -1
- data/test/views/calc.html.erb +0 -1
- data/test/views/error.builder +0 -3
- data/test/views/error.erb +0 -3
- data/test/views/error.haml +0 -3
- data/test/views/error.sass +0 -2
- data/test/views/explicitly_nested.str +0 -1
- data/test/views/foo/hello.test +0 -1
- data/test/views/hello.asciidoc +0 -1
- data/test/views/hello.builder +0 -1
- data/test/views/hello.coffee +0 -1
- data/test/views/hello.creole +0 -1
- data/test/views/hello.erb +0 -1
- data/test/views/hello.haml +0 -1
- data/test/views/hello.less +0 -5
- data/test/views/hello.liquid +0 -1
- data/test/views/hello.mab +0 -1
- data/test/views/hello.md +0 -1
- data/test/views/hello.mediawiki +0 -1
- data/test/views/hello.nokogiri +0 -1
- data/test/views/hello.rabl +0 -2
- data/test/views/hello.radius +0 -1
- data/test/views/hello.rdoc +0 -1
- data/test/views/hello.sass +0 -2
- data/test/views/hello.scss +0 -3
- data/test/views/hello.slim +0 -1
- data/test/views/hello.str +0 -1
- data/test/views/hello.styl +0 -2
- data/test/views/hello.test +0 -1
- data/test/views/hello.textile +0 -1
- data/test/views/hello.wlang +0 -1
- data/test/views/hello.yajl +0 -1
- data/test/views/layout2.builder +0 -3
- data/test/views/layout2.erb +0 -2
- data/test/views/layout2.haml +0 -2
- data/test/views/layout2.liquid +0 -2
- data/test/views/layout2.mab +0 -2
- data/test/views/layout2.nokogiri +0 -3
- data/test/views/layout2.rabl +0 -3
- data/test/views/layout2.radius +0 -2
- data/test/views/layout2.slim +0 -3
- data/test/views/layout2.str +0 -2
- data/test/views/layout2.test +0 -1
- data/test/views/layout2.wlang +0 -2
- data/test/views/nested.str +0 -1
- data/test/views/utf8.erb +0 -2
- data/test/wlang_test.rb +0 -87
- data/test/yajl_test.rb +0 -86
data/README.hu.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
*Fontos megjegyzés: Ez a dokumentum csak egy fordítása az angol nyelvű
|
3
3
|
változatnak, és lehet, hogy nem naprakész.*
|
4
4
|
|
5
|
-
A Sinatra egy [DSL](
|
5
|
+
A Sinatra egy [DSL](https://en.wikipedia.org/wiki/Domain-specific_language)
|
6
6
|
webalkalmazások Ruby nyelven történő fejlesztéséhez, minimális
|
7
7
|
energiabefektetéssel:
|
8
8
|
|
@@ -21,7 +21,7 @@ Telepítsd a gem-et és indítsd el az alkalmazást a következőképpen:
|
|
21
21
|
ruby myapp.rb
|
22
22
|
```
|
23
23
|
|
24
|
-
Az alkalmazás elérhető lesz itt:
|
24
|
+
Az alkalmazás elérhető lesz itt: [http://localhost:4567](http://localhost:4567)
|
25
25
|
|
26
26
|
## Útvonalak (routes)
|
27
27
|
|
@@ -88,7 +88,7 @@ Az útvonalmintákban szerepelhetnek joker paraméterek is, melyeket a
|
|
88
88
|
Reguláris kifejezéseket is felvehetünk az útvonalba:
|
89
89
|
|
90
90
|
```ruby
|
91
|
-
get
|
91
|
+
get /\/hello\/([\w]+)/ do
|
92
92
|
"Helló, #{params['captures'].first}!"
|
93
93
|
end
|
94
94
|
```
|
@@ -411,7 +411,7 @@ Csak indításkor, de minden környezetre érvényesen fusson le:
|
|
411
411
|
end
|
412
412
|
```
|
413
413
|
|
414
|
-
Csak akkor fusson le, ha a környezet (a
|
414
|
+
Csak akkor fusson le, ha a környezet (a APP_ENV környezeti változóban)
|
415
415
|
`:production`-ra van állítva:
|
416
416
|
|
417
417
|
```ruby
|
@@ -518,7 +518,7 @@ A Sinatra keretrendszerben gyerekjáték a Rack middleware-ek behúzása a
|
|
518
518
|
```
|
519
519
|
|
520
520
|
A `use` metódus szemantikája megegyezik a
|
521
|
-
[Rack::Builder](http://rubydoc.info/github/rack/rack/master/Rack/Builder) DSL-ben
|
521
|
+
[Rack::Builder](http://www.rubydoc.info/github/rack/rack/master/Rack/Builder) DSL-ben
|
522
522
|
használt +use+ metóduséval (az említett DSL-t leginkább rackup állományokban
|
523
523
|
használják). Hogy egy példát említsünk, a `use` metódus elfogad
|
524
524
|
változókat és blokkokat egyaránt, akár kombinálva is ezeket:
|
@@ -562,7 +562,7 @@ könyvtárat ajánljuk:
|
|
562
562
|
assert_equal 'Helló Frici!', last_response.body
|
563
563
|
end
|
564
564
|
|
565
|
-
def
|
565
|
+
def test_with_user_agent
|
566
566
|
get '/', {}, 'HTTP_USER_AGENT' => 'Songbird'
|
567
567
|
assert_equal "Songbird-öt használsz!", last_response.body
|
568
568
|
end
|
@@ -621,7 +621,7 @@ alkalmazás átalakítható Sinatra::Base alapú komponensekké két lépésben:
|
|
621
621
|
A `Sinatra::Base` osztály igazából egy üres lap: a legtöbb funkció
|
622
622
|
alapból ki van kapcsolva, beleértve a beépített szervert is. A
|
623
623
|
beállításokkal és az egyes kapcsolók hatásával az
|
624
|
-
[Options and Configuration](http://
|
624
|
+
[Options and Configuration](http://www.sinatrarb.com/configuration.html) lap
|
625
625
|
foglalkozik.
|
626
626
|
|
627
627
|
Széljegyzet: A Sinatra felső szintű DSL-je egy egyszerű delegációs
|
@@ -649,6 +649,40 @@ Az alábbi kapcsolókat ismeri fel a rendszer:
|
|
649
649
|
-s # a rack szerver/handler beállítása (alapértelmezetten ez a thin)
|
650
650
|
-x # a mutex lock bekapcsolása (alapértelmezetten ki van kapcsolva)
|
651
651
|
|
652
|
+
## Több szálon futtatás
|
653
|
+
|
654
|
+
_Parafrázis [Konstantin StackOverflow válasza][so-answer] alapján_
|
655
|
+
|
656
|
+
A Sinatra nem szabja meg az konkurenciakezelés módját, hanem az alatta működő
|
657
|
+
Rack kezelőre (szerverre) hagyja ezt a feladatot, ami például a Thin, a Puma,
|
658
|
+
vagy a WEBrick. A Sinatra önmagában szálbiztos, tehát semmilyen probléma sem
|
659
|
+
adódik, ha a Rack kezelő többszálú konkurenciamodellt használ. Ezek szerint
|
660
|
+
szerverindításkor meg kell adni a Rack szervernek megfelelő indítási módot.
|
661
|
+
A következő példa egy többszálú Thin szerver indítását mutatja be.
|
662
|
+
|
663
|
+
```ruby
|
664
|
+
# app.rb
|
665
|
+
|
666
|
+
require 'sinatra/base'
|
667
|
+
|
668
|
+
class App < Sinatra::Base
|
669
|
+
get '/' do
|
670
|
+
"Hello, World"
|
671
|
+
end
|
672
|
+
end
|
673
|
+
|
674
|
+
App.run!
|
675
|
+
|
676
|
+
```
|
677
|
+
|
678
|
+
A szerverindítás parancsa a következő lenne:
|
679
|
+
|
680
|
+
``` shell
|
681
|
+
thin --threaded start
|
682
|
+
```
|
683
|
+
|
684
|
+
[so-answer]: http://stackoverflow.com/a/6282999/1725341
|
685
|
+
|
652
686
|
## Fejlesztői változat
|
653
687
|
|
654
688
|
Ha a Sinatra legfrissebb, fejlesztői változatát szeretnéd használni,
|
@@ -684,11 +718,11 @@ A Sinatra frissítését később így végezheted el:
|
|
684
718
|
|
685
719
|
## További információk
|
686
720
|
|
687
|
-
* [A projekt weboldala](http://
|
721
|
+
* [A projekt weboldala](http://www.sinatrarb.com/) - Kiegészítő dokumentáció,
|
688
722
|
hírek, hasznos linkek
|
689
|
-
* [Közreműködés](http://
|
723
|
+
* [Közreműködés](http://www.sinatrarb.com/contributing.html) - Hibát találtál?
|
690
724
|
Segítségre van szükséged? Foltot küldenél be?
|
691
725
|
* [Lighthouse](http://sinatra.lighthouseapp.com) - Hibakövetés és kiadások
|
692
|
-
* [Twitter](
|
726
|
+
* [Twitter](https://twitter.com/sinatra)
|
693
727
|
* [Levelezőlista](http://groups.google.com/group/sinatrarb)
|
694
728
|
* [IRC: #sinatra](irc://chat.freenode.net/#sinatra) a http://freenode.net címen
|