micromongo

সফটওয়্যার স্ক্রিনশট:
micromongo
সফটওয়্যার বিবরণ:
সংস্করণ: 0.1.4
তারিখ আপলোড: 14 Apr 15
ডেভেলপার: Jason Moiron
লাইসেন্স: বিনামূল্যে
জনপ্রিয়তা: 2

Rating: nan/5 (Total Votes: 0)

micromongo আপনি, বৈধতা নথি, স্বয়ংক্রিয় মোড়ানো queryset ফলাফল ডট ব্যবহারের অনুমতি, এবং আপনি আঙ্গুলসমূহ সংরক্ষণ প্রাক / পোস্ট দিতে পারে, যা সহজ ORM-শৈলী ক্লাস তৈরি করতে পারবেন যে pymongo কাছাকাছি একটি ছোট স্তর.
এটা মনের মধ্যে microframeworks সঙ্গে পরিকল্পিত, কিন্তু আবেদন এবং কাঠামো অজ্ঞেয়বাদী এর. এটা pymongo ব্যবহার সহজতর করা এবং সাধারণ বাগধারার জন্য সরঞ্জাম প্রদান, আপনার ডাটা স্ট্রাকচার থেকে pymongo বা MongoDB অস্পষ্ট না বোঝানো হয়.
আপনি বিষয় খুলতে বা micromongo এর GitHub উপর পুল অনুরোধ পাঠাতে স্বাগত জানাই
micromongo আপনার জন্য কাজ করতে পারে না যে সরলীকরণ নামে কয়েক নকশা সিদ্ধান্ত তোলে:
& Nbsp; - & nbsp; micromongo একটি একক বিশ্বব্যাপী সংযোগ বজায় রাখে, যাতে আপনি একাধিক MongoDB সার্ভারের সাথে সংযোগ স্থাপন মডেল যে থাকতে পারে না
& Nbsp; - & nbsp; মডেল নাম এবং micromongo মডেলের সঙ্গে কাজ করবে না নথি বৈশিষ্ট্য নামের একটি handfull আছে; এই সম্পূর্ণ ডক্স মধ্যে আবৃত করা হবে
& Nbsp; - & nbsp; আপনি শুধুমাত্র সংগ্রহ প্রতি এক মডেল থাকতে পারে
শুরু
Micromongo সঙ্গে চলতে শুরু করার জন্য, এটা আমদানি:
>>> Micromongo আমদানি সংযোগ থেকে, মডেল
>>> গ =) (সংযোগ
কানেক্ট pymongo এর সংযোগ বস্তু হিসেবে একই যুক্তি লাগে, এবং এটি স্বয়ংক্রিয়ভাবে উপযুক্ত মডেল ক্লাস আবৃত প্রশ্ন ফলাফল করার প্রচেষ্টা ছাড়া প্রায় অভিন্নরুপে আচরণ করে. আপনি একটি পরিষ্কার, মান সংযোগ বস্তুর চান তাহলে আপনি এই কলের মাধ্যমে তৈরি যে সংযোগ বস্তুর ক্যাশে এবং বিভিন্ন ORM-শৈলী সুবিধা ব্যবহার করা হবে, ইত্যাদি Model.save (), Model.proxy, মত, আপনি সহজেই পেতে পারেন :
>>> Micromongo আমদানি clean_connection থেকে
>>> পরিষ্কার = clean_connection ()
আর্গুমেন্ট গ্রহণ করা হয় না clean_connection উল্লেখ্য, এবং সর্বদা বর্তমান micromongo সংযোগ হিসাবে একই সেটিংস সঙ্গে একটি পরিষ্কার সংযোগ বর্গ ফিরে আসতে হবে.
এই সংযোগ বস্তু সঙ্গে, আপনি ডাটাবেস তৈরি করতে পারেন বা স্বাভাবিক pymongo বস্তুর সঙ্গে যাই হোক না কেন আপনি কি করবেন:
>>> ডিবি = c.test_db
>>> সংগ্রহ = db.test_collection
>>> Collection.save ({"docid": 1, "ব্যর্থ": মিথ্যা})
>>> Collection.find_one ()
{U'_id ': ObjectId (' ... '), u'fail': মিথ্যা, u'docid ': 1}
এছাড়াও আপনি ঘোষণামূলক শৈলী মধ্যে একটি নির্দিষ্ট সংগ্রহের জন্য আপনার নিজের মডেল ঘোষণা করতে পারেন:
>>> বর্গ TestModel (মডেল):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; সংগ্রহ = 'test_db.test_collection'
>>> Collection.find_one ()

এই ক্লাস তাদের অনেক বেশি সুবিধাজনক ব্যবহার করতে পারেন যে একটি অভিধান উপর অতিরিক্ত বৈশিষ্ট্য একটি নম্বর আছে. নথি কি গুণাবলী হিসাবে অ্যাক্সেসযোগ্য হয়:
>>> T = collection.find_one ()
>>> T.fail
মিথ্যা
>>> T.docid
1
নথি সহজে ডাটাবেস চলতে থাকে হয়:
>>> T.docid = 17
>>> T.save ()
>>> Clean.test_db.test_collection.find_one ()
{U'_id ': ObjectId (' ... '), u'fail': মিথ্যা, u'docid ': 17}
সংজ্ঞা মডেল
সর্বোপরি, সংগ্রহ বৈশিষ্ট্য আমাদের ফু মডেল নির্ধারিত ছিল. এই যদিও, একটি শর্টকাট ছিল; ডাটাবেস এবং সংগ্রহ আলাদাভাবে বরাদ্দ করা হয়, মডেল সম্পূর্ণ সংগ্রহ নাম চিন্তা করতে পারেন. সংগ্রহ এবং ডাটাবেস উপস্থিত না থাকলে, micromongo আপনার মডেল বর্গ এবং মডিউল নামের উপর ভিত্তি করে এটা চিন্তা করা হয়. উদাহরণস্বরূপ, blog.Post blog.post হয়ে যাবে, বা stream.StreamEntry stream.stream_entry হয়ে যাবে. স্পষ্ট অন্তর্নিহিত চেয়ে ভাল হয়, এবং এটি আপনি নিজে সংগ্রহ সেট উত্সাহ দেওয়া হচ্ছে.
প্যাকিং এবং ডাটাবেস থেকে ফলাফল unpacking এছাড়া, মডেল ডিফল্ট মান নির্ধারণ এবং মডেল সংরক্ষণের আগে বৈধতা করতে পারেন, যা একটি বৈশিষ্ট নথি নির্ধারণ করতে পারবেন. একটি তুচ্ছ ব্লগ পোস্ট মডেল নিন:
>>> Micromongo.spec আমদানি থেকে *
>>> বর্গ পোস্ট (মডেল):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; সংগ্রহ = 'test_db.blog_posts'
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; বৈশিষ্ট = অভি (
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; লেখক মাঠ, (= সত্য, ডিফল্ট = 'jmoiron', টাইপ = basestring প্রয়োজন) =
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; শিরোনাম = ফিল্ড (প্রয়োজন = মিথ্যা, ডিফল্ট = '', টাইপ = basestring),
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; প্রকাশিত = ফিল্ড (= প্রয়োজনীয় সত্য, ডিফল্ট = মিথ্যা, টাইপ = [সত্য, মিথ্যা]),
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; শরীরের = মাঠ (টাইপ = ইউনিকোড),
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; টাইমস্ট্যাম্প = মাঠ (),
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; )
>>> পি = Post.new ()
>>> পি
<পোস্ট: {'শিরোনাম': তোমার ',' লেখক '': u'jmoiron ',' প্রকাশিত ': মিথ্যা}>
কিছু জিনিস এখানে যাচ্ছি. একটি ডিফল্ট আছে ক্ষেত্র তারা প্রয়োজন বা না কিনা ডিফল্ট সক্রিয়া করা হয়. একটি প্রয়োজনীয় ক্ষেত্র একটি ডিফল্ট আছে না হয়, তাহলে এটা কেউ সক্রিয়া করা হচ্ছে.
ক্ষেত্র, এক বা একাধিক বেস ধরনের, বা এক বা একাধিক মান একটি মান নেয় এবং সত্য বা মিথ্যা ফেরৎ একটি callable হতে পারে, যা একটি টাইপ যুক্তি, গ্রহণ করতে পারেন. এক বা একাধিক ধরনের উপলব্ধ করা হয়, isinstance মান ডান টাইপ যে পরীক্ষা করার জন্য ব্যবহার করা হয়. একটি অথবা আরও বেশি মান উপলব্ধ করা হয়, মাঠ মান এবং মান সেট আছে যে চেক, একটি Enum টাইপ হিসাবে কাজ করে. কোন টাইপ দেওয়া হয় এটি প্রয়োজন এবং অনুপস্থিত হয়, যদি না, বৈধতা সবসময় একটি ক্ষেত্র প্রেরণ করা হয়.
পি একটি ক্ষেত্র একটি অবৈধ টাইপ দেওয়া হয়, তাহলে একটি শাহো লিখেছেন উত্থাপিত হয়:
>>> P.title = 10
>>> P.save ()
ট্রেসব্যাক (সবচেয়ে সাম্প্রতিক কল শেষ):
& Nbsp; ...
শাহো লিখেছেন: কি বৈশিষ্ট মেলে না: ['শিরোনাম']
>>> দেল p.author
>>> P.save ()
ট্রেসব্যাক (সবচেয়ে সাম্প্রতিক কল শেষ):
& Nbsp; ...
শাহো লিখেছেন: হারিয়ে যাওয়া ক্ষেত্র: ['লেখক'], অবৈধ ক্ষেত্র: ['শিরোনাম']
>>> P.title = 'আমার প্রথম blogpost'
>>> P.author = 'jmoiron'
>>> P.published = সত্য
>>> P.body = U "এটা আমার প্রথম ব্লগ পোস্ট .. & nbsp গেছে, আমি উত্তেজিত আছি!"
>>> P.save ()
Model.find
সুবিধা এবং শুষ্ক জন্য, Model.find অধিকার সংগ্রহ বিরুদ্ধে একটি খুঁজে ইস্যু micromongo এর কার্সার ব্যবহার করা হবে যে একটি classmethod হয়. এই পদ্ধতি ঠিক pymongo এর Collection.find হিসাবে একই আচরণ করে.
micromongo এর সামান্য পরিবর্তন কার্সার বর্গ সব অ্যাডাপ্টর (এটি এবং এটি একটি কার্সার ফেরৎ যদি কিছু আপনি বন্ধ শৃঙ্খল) জন্য উপলব্ধ একটি জ্যাঙ্গো-অনুপ্রাণিত order_by পদ্ধতি তোলে. আপনি একটি ঐচ্ছিক নেতৃস্থানীয় সঙ্গে এক বা একাধিক ক্ষেত্র নাম প্রেরণ করতে পারেন '-', আরোহী বা ক্রম সাজানো কিছু বাছাই.
এই পরিবর্তন আপনি এটি আমদানি করেও pymongo এর ক্ষমতা অধিকাংশ ব্যবহার করার অনুমতি দেয়, এবং আপনি আপনার ডাটা অবস্থান বাহুল্য পুনরাবৃত্তি এড়ানো.
ক্ষেত্র subclassing
আপনি কি আপনি চান না যে আপনার নিজের ক্ষেত্র তৈরি করার পরামর্শ দেওয়া হয়. মাঠ উপশ্রেণী একটি ইনকামিং মান গ্রহণ করা এবং তারা চান তবে এটা রুপান্তর করতে পারেন, যা একটি হুক ফাংশন pre_validate আছে. আসলে ক্ষেত্র উপস্থিত হলে এই শুধুমাত্র কাজ করা হবে; তাই একটি DateTimeField একটি auto_now_add ভালো কিছু পেতে, আপনি এটি প্রয়োজন করতে চাই এবং তার pre_validate datetime.datetime.now () মধ্যে কেউ চালু করতে হবে '

আবশ্যক :.

  • পাইথন

অনুরূপ সফ্টওয়্যার

Metabase
Metabase

11 May 15

ZODB3
ZODB3

15 Apr 15

Dobbin
Dobbin

14 Apr 15

বিকাশকারী অন্যান্য সফ্টওয়্যার Jason Moiron

speedparser
speedparser

14 Apr 15

redtape
redtape

14 Apr 15

pdf2zip
pdf2zip

11 May 15

মন্তব্য micromongo

পাওয়া মন্তব্যসমূহ না
মন্তব্য যোগ করুন
ছবি চালু!