क्या किसी ने सिनात्रा के साथ Devise मणि स्थापित किया है?सिनात्रा के साथ देवता
डेविस वार्डन पर आधारित है और इसलिए इसे सिनात्रा पर काम करना चाहिए, मुझे इसे कार्यान्वित करने के बारे में कोई संबंधित जानकारी नहीं मिली।
क्या किसी ने सिनात्रा के साथ Devise मणि स्थापित किया है?सिनात्रा के साथ देवता
डेविस वार्डन पर आधारित है और इसलिए इसे सिनात्रा पर काम करना चाहिए, मुझे इसे कार्यान्वित करने के बारे में कोई संबंधित जानकारी नहीं मिली।
वसीयत वास्तव में warden के लिए अच्छा सहायकों के साथ सिर्फ एक रेल केंद्रित आवरण है, जो अंतर्निहित रैक प्रमाणीकरण ढांचा है । इसलिए यदि आप रेल के साथ संयोजन के साथ सिनात्रा का उपयोग कर रहे हैं, तो आप अपने रेल ऐप में डेविस का उपयोग कर सकते हैं और सीधे अपने सिनात्रा ऐप में वार्डन का उपयोग कर सकते हैं, और वे वही उपयोगकर्ता सत्र डेटा देखेंगे।
तो नहीं, आप सीधे अपने सिनात्रा ऐप के भीतर डेविस का उपयोग नहीं कर सकते हैं, लेकिन यदि आप रेल में कुछ टुकड़ों और सिनात्रा के अन्य टुकड़ों के साथ मॉड्यूलर ऐप बना रहे हैं, तो आप घटकों के बीच डेविस/वार्डन का उपयोग कर सकते हैं।
डेविस केवल रेल के लिए डिज़ाइन किया गया है। आप सिनात्रा के साथ इसका इस्तेमाल नहीं कर सकते।
आप देख सकते हैं:
https://github.com/maxjustus/sinatra-authentication
http://www.gittr.com/index.php/archive/sinatra-basic-authentication-selectively-applied/
दूसरा लिंक अब काम नहीं कर रहा है। – zhon
https://github.com/jsmestad/sinatra_warden भी उपलब्ध है।
मैं इसे काम करने में सक्षम था। कुछ मुख्य पहलुओं थे:
यहाँ के लिए उपलब्ध बनाने /config.ru से कोड की सबसे अधिक प्रासंगिक हिस्सा है:
#
# ...
# Rest with Rails
map "/" do
run MyApp::Application
end
# Anything urls starting with /slim will go to Sinatra
map "/slim" do
# make sure :key and :secret be in-sync with initializers/secret_store.rb initializers/secret_token.rb
use Rack::Session::Cookie, :key => '<< see, initializers/secret_store.rb >>', :secret => '<< copy from initializers/secret_token.rb >>'
# Point Warden to the Sinatra App
use Warden::Manager do |manager|
manager.failure_app = AppMain
manager.default_scope = Devise.default_scope
end
# Borrowed from https://gist.github.com/217362
Warden::Manager.before_failure do |env, opts|
env['REQUEST_METHOD'] = "POST"
end
run AppMain
end
एक पूर्ण समाधान के लिए http://labnote.beedesk.com/sinatra-warden-rails-devise देखें।
आपको अपने ऐप को रेल – AMBasra
@AMBasra में विकसित करना चाहिए था, मुझे सीआरयूडी एपीआई विकसित करने के लिए एक सरल ढांचे की आवश्यकता थी, सिनात्रा कार्यों के लिए सही आकार के उपकरण की तरह दिखती थी। –
मेरा मतलब था कि आप अपने ऐप के साथ रेल सर्वर चला रहे हैं। तो यह और अधिक हल्का नहीं है। यदि आप सब कुछ एक में कर सकते हैं तो दो ढांचे का उपयोग क्यों करें। उत्पादन पर्यावरण रेल और सिनात्रा दोनों भी चलाएगा। – AMBasra
यह सुंदर रेल-केंद्रित है: https://github.com/plataformatec/devise/blob/master/app/controllers/devise/confirmations_controller.rb – scragz