2016-01-19 12 views
13

मुझे लगता है मैं इस परिदृश्य क्या करना है तय करने के लिए कोशिश कर रहा हूँ:एंजुलर और नोडजेस के साथ सास ऐप, मैं विभिन्न ग्राहकों को कैसे व्यवस्थित करूं?

मैं एक उत्पाद है कि मैं एक सास व्यापार मॉडल में बेचना चाहते हैं बनाना चाहते हैं, मैं पहले से ही बैकएंड है और अधिक या कम सोचा और में कुछ कोड नोडज में जगह। यह एक निश्चित अंतराल तक पहुंचने पर उपयोगकर्ताओं के भूमिकाओं को ओथ, सत्र, और नियंत्रित करता है।

संदेह सामने की वास्तुकला में है: प्रत्येक ग्राहक एक ही कार्यक्षमता साझा करेगा, लेकिन उनके पृष्ठ का डिज़ाइन एक दूसरे से अलग होगा। मैं जितना ऐप तर्क डाल सकता हूं कि मैं सेवाओं में कर सकता हूं, इसलिए मैं इसका पुन: उपयोग कर सकता हूं, मेरा विचार केवल क्लाइंट से ग्राहक तक नियंत्रकों/टेम्पलेट्स/निर्देशों को बदलना है, क्या यह ठीक है?

क्या मेरे पास अलग-अलग फ़ोल्डर्स हैं और प्रत्येक क्लाइंट के लिए नोडज से स्थिर फाइलों की सेवा करनी चाहिए? पूर्व: नोडजेस में मुझे पता चलेगा कि क्लाइंट 1 के लिए यूआरएल कहा गया था, इसलिए मैं ग्राहक 1-index.html की सेवा करूंगा?

क्या मुझे प्रत्येक क्लाइंट को अपने स्वयं के नोडजे सर्वर और अपने होस्ट में रखना चाहिए?

अन्य तरीके क्या हैं?

मैं सेवाओं को आसानी से पुन: उपयोग करने में सक्षम होना चाहता हूं क्योंकि मैं सुविधाओं में बदलाव या अधिक जोड़ रहा हूं, और मैं इसे आसानी से अपग्रेड करना चाहता हूं।

एक व्यवस्थापक पैनल भी होगा जो उन सभी के लिए बिल्कुल समान होगा, जो हिस्सा बदल जाएगा वह मेरे ग्राहक के उपयोगकर्ता देखेगा।

इसके बारे में सोचें क्योंकि कई ग्राहक हैं और उनमें से प्रत्येक को एक स्टोर दे रहा है, ताकि वे अपनी सामग्री बेच सकें। वे एक व्यवस्थापक पृष्ठ और एक सार्वजनिक पृष्ठ चाहते हैं। व्यवस्थापक पृष्ठ सभी के लिए समान होगा, लेकिन सार्वजनिक पृष्ठ को बदलना होगा।

तो, और ऐप जो उपयोगकर्ताओं पर समान कार्यक्षमता साझा करता है लेकिन उनमें से प्रत्येक के लिए पूरी तरह से अलग दिखता है, आप इसे कैसे करेंगे?

+0

हालांकि आपके पास सही विचार था, [प्रोग्रामर स्टैक एक्सचेंज] (http://programmers.stackexchange.com/) शायद आपको अधिक गहन उत्तर मिलेगा। सामान्य तर्क और आर्किटेक्चर प्रश्न पूछना यहां से अधिक है, जो ज्यादातर त्रुटियों और वाक्यविन्यास के बारे में पूछने के लिए एक जगह है। अपने प्रश्न का उत्तर देने के लिए, [RESTful API/प्रोग्रामिंग] पर कुछ साहित्य देखें (http://stackoverflow.com/questions/671118/what-exactly-is-restful-programming)। आपके विचार के लिए अमूर्त "हुक" होने के कारण पोर्टेबिलिटी और अलग-अलग दिखने की इजाजत देने वाले एक वास्तविक एपीआई का हिस्सा लोकप्रिय और हिस्सा है। – MikeJannino

उत्तर

1

चूंकि आप कोणीय का उपयोग कर रहे हैं, क्या आपने रूटिंग सेवा का उपयोग करने के बारे में सोचा है? इसके बारे में और अधिक यहां देखें: https://docs.angularjs.org/api/ngRoute/provider/ $ रूटप्रोवाइडर

असल में यह क्या करता है यह यूआरएल लोड पर एक HTML पृष्ठ और नियंत्रक (जेएस फ़ाइल) लोड करता है। उदाहरण के लिए यदि आपका उपयोगकर्ता url.com/client1 पर जायेगा और कोणीय क्लाइंट 1.html और क्लाइंट 1CTRL लोड करेगा।

  • किसी भी निर्भरता को Index.Html- संदर्भ, और शरीर केवल एक एनजी-व्यू टैग में
  • टेम्पलेट (एचटीएमएल टेम्पलेट्स से प्रत्येक के लिए:

    एक साधारण संरचना निम्न होगा उपयोगकर्ताओं)

    • लॉग इन
    • व्यवस्थापक
    • ग्राहक 1 आदि ...
  • स्क्रिप्ट (जे एस)
    • बाहरी स्क्रिप्ट (jQuery, कोणीय ईटीसी)
    • सूचकांक।js
  • स्टाइलशीट
    • सीएसएस फ़ाइलें यहां
  • GO

उदाहरण कोणीय रूटिंग (यह है जहाँ आप प्रत्येक पृष्ठ के लिए अपने सभी js नियंत्रकों के लिए होता है): Tutorial

var App = angular.module('saasApp', []); 

App.config(['$routeProvider', 
    function($routeProvider) { 
    $routeProvider. 
     when('/admin', { 
     templateUrl: 'templates/admin.html', 
     controller: 'AdminController' 
     }). 
     when('/client1', { 
     templateUrl: 'templates/client1.html', 
     controller: 'client1Controller' 
     }). 
     when('/login', { 
     templateUrl: 'templates/login.html', 
     controller: 'loginController' 
     }). 
     otherwise({ 
     redirectTo: '/login' 
     }); 
    }]); 

आशा है कि यह आप जो करने की कोशिश कर रहे हैं उसके लिए काम करता है।

-1

मुझे लगता है कि आपका प्रश्न आर्किटेक्चर के बारे में है। अगर मैं एक ही बैक एंड और अलग-अलग फ्रंट एंड करना चाहता था तो मैं आभासी टेम्पलेट संरचना लागू करूँगा।

अनुमतियां

मैं होगा:

  1. सेटअप से अधिक दुकानों के अधिकार हैं कि एक सुपर उपयोगकर्ता।
  2. एक व्यवस्थापक उपयोगकर्ता है कि एक विशेष दुकान

सुपर उपयोगकर्ता टेम्पलेट प्रबंधन प्रबंधन कर सकते हैं।

  1. मैं/व्यवस्थापक/टेम्पलेट्स में आधार टेम्पलेट्स के लिए होता है और जब मैं एक नई दुकान बनाने मैं उन्हें कॉपी करके उन्हें डेटाबेस में रहना होगा
  2. मैं बाएं हाथ की ओर सभी टेम्पलेट्स के साथ एक मेनू बनाना होगा और wysiwyg संपादक है कि मुझे
  3. खाका बड़ा घूँट वाक्य रचना
  4. का समर्थन करेगा विशेष ग्राहक के लिए उन टेम्पलेट को संशोधित करने और अतिरिक्त संपत्ति (चित्र हों, PDF आदि) अपलोड करने के लिए मैं एक सर्वर मार्ग बनाने होगा की अनुमति देता है/प्राप्त/tempalte /: आईडी और गतिशील रूप पार्स स्विग इंजन
का उपयोग कर सर्वर पर उन टेम्पलेट्स

मुझे आशा है कि इससे मदद मिलती है। यहां कुंजी ब्राउज़र के माध्यम से टेम्पलेट्स को अपडेट करने और वेब पैनल के माध्यम से नई दुकानों/ग्राहकों को वितरित करने में सक्षम होना है।

संबंधित मुद्दे