इसका अर्थ है app-name.heroku.com।हेरोोक पर रेल चलाने पर आप ऐप नाम कैसे प्राप्त करते हैं?
नोट यह Rails.application.class.parent_name
से अलग है।
Rails.application.class.parent_name
एप्लिकेशन में परिभाषित किया गया है।
रेल में कार्य करना 3.
इसका अर्थ है app-name.heroku.com।हेरोोक पर रेल चलाने पर आप ऐप नाम कैसे प्राप्त करते हैं?
नोट यह Rails.application.class.parent_name
से अलग है।
Rails.application.class.parent_name
एप्लिकेशन में परिभाषित किया गया है।
रेल में कार्य करना 3.
Heroku वास्तव में URL चर वातावरण में डिफ़ॉल्ट रूप से
app_name = ENV['URL'].split(".").first
यहाँ संदर्भित सेट: http://devcenter.heroku.com/articles/config-vars और http://ididitmyway.heroku.com/past/2010/11/9/sinatra_settings_and_configuration/
अद्यतन: वास्तव में यूआरएल चर हो सकता है डिफ़ॉल्ट रूप से वहां नहीं होते हैं, लेकिन आप हमेशा एक पर्यावरण चर "ऐप नाम" प्राथमिकता जोड़ सकते हैं, जब तक कि आप उस दृष्टिकोण से बचने की कोशिश नहीं कर रहे थे।
अपडेट 2: वास्तव में, दूसरा, स्पष्ट लेकिन सीमित दृष्टिकोण, अनुरोध चर से डोमेन को पकड़ना होगा, लेकिन यह आपको आपके नियंत्रक तक सीमित कर देगा। http://guides.rubyonrails.org/action_controller_overview.html#the-request-object
Rails.application.config.session_options[:key].sub(/^_/,'').sub(/_session/,'')
=> "test-app"
, रेल ऐप्लिकेशन के नाम पर है कि के रूप में यह वर्तनी गया था जब तुमने किया था
'नए एप्लिकेशन के नाम रेल' इस का उपयोग करना, आप ऐसा कर सकता है:
class << Rails.application
def name
Rails.application.config.session_options[:key].sub(/^_/,'').sub(/_session/,'')
end
end
Rails.application.name
=> 'test-app'
की बजाय टेस्ट-ऐप वास्तव में, यह कुकी –
ENV['URL']
के साथ समाधान केवल अनुरोधों के दौरान काम करेगा।
तो अगर आप एक अनुरोध बाहर एप्लिकेशन आईडी जानना चाहते हैं, तो आप इस
heroku config:add APP_NAME=<myappname> --app <myappname>
की तरह एक config चर सेट और के दौरान संकलन
heroku labs:enable user-env-compile -a myapp
lab feature है कि आप उन्हें उपयोग करने के लिए अनुमति देता है सक्षम है और अब मेरे पास मेरा ऐप नाम उपलब्ध है:
ENV["APP_NAME"] # '<myappname>'
यह आसान है अगर यह आसान है आप ऐप के नाम या आईडी के आधार पर अलग-अलग कॉन्फ़िगरेशन फ़ाइल (ओथ क्रेडेंशियल्स के साथ कहें) लोड करना चाहते हैं।
'प्रयोगशालाओं का नाम है: सक्षम' एक heroku कमांड नहीं है। कोई विचार? – baash05
शायद अपने heroku मणि संस्करण की जांच करें या heroku toolbelt स्थापित करें। या डॉक्स/संपर्क heroku देखें। https://devcenter.heroku.com/categories/labs क्या मदद की साझा करना सुनिश्चित करें! – hakunin
उसके लिए heroku labs कमांड के बिना काम किया। – abrocks
यदि आप this प्रति प्रत्येक ऐप में विभिन्न वातावरण में चल रहे हैं, तो आप staging.rb
या production.rb
में एक चर सेट कर सकते हैं।
मैंने कॉन्फ़िगर की जांच की है और इसमें ऐप-नाम के साथ कोई चर नहीं है। हां, एक कॉन्फ़िगरेशन सेट करना एक दृष्टिकोण है। –
यह हमेशा काम नहीं करता है, क्योंकि जब आप इसे चेक करते हैं तो आप अपने ऐप के लिए एक अलग वर्तनी का उपयोग कर सकते थे .. उदा। test_app – Tilo