ডিফল্ট হিসাবে মংগোডিবি শেলের মধ্যে প্রিন্ট মুদ্রণ


516

মংগোকে সুন্দর প্রিন্ট আউটপুট বলার উপায় আছে কি? বর্তমানে, সমস্ত কিছুই একক লাইনে আউটপুট এবং এটি পড়া কঠিন, বিশেষত নেস্টেড অ্যারে এবং নথি সহ documents


এখন: আপনি এটি মোঙ্গোতে লোড হওয়া বাহ্যিক জাভাস্ক্রিপ্ট থেকে কীভাবে মুদ্রণ করবেন?
উইটোল্ড কাকজুরবা

@ উইটল্ডক্যাজুরবা আপনার প্রশ্নের উত্তর অনুসন্ধানের চেষ্টা করুন। যদি আপনি উত্তর না খুঁজে পান তবে এগিয়ে যান এবং এটি একটি নতুন প্রশ্ন হিসাবে পোস্ট করুন।
এমফোরমার্লন

উত্তর:


868

( দ্রষ্টব্য: এটি প্রশ্নের মূল সংস্করণটির উত্তর, যার "ডিফল্ট" প্রয়োজন নেই )

আপনি এটি সুন্দর হতে চাইতে পারেন।

db.collection.find().pretty()

18
আপনি যদি আউটপুট রঙিন করতে চান তবে + অন্যান্য বর্ধিতকরণগুলি github.com/TylerBrock/mongo-hacker @ SAFX দেখুন
রায়ান

এখন: আপনি এটি মোঙ্গোতে লোড হওয়া বাহ্যিক জাভাস্ক্রিপ্ট থেকে কীভাবে মুদ্রণ করবেন? এটি কাজ করবে না ...
উইটল্ড কাকজুরবা

416

আপনি যোগ করতে পারেন

DBQuery.prototype._prettyShell = true

$HOME/.mongorc.jsডিফল্টরূপে বিশ্বব্যাপী সুন্দর মুদ্রণ সক্ষম করতে আপনার ফাইলটিতে প্রবেশ করুন ।


13
আপনি একটি কাস্টম ফাংশন করতে চাইবেন যা এটি আপনার জন্য অক্ষম করে। এটিকে আপনার $HOME/.mongorc.js: gist.github.com/mathrawka/6239405 এ যুক্ত করুন তবে সুন্দর প্রিন্ট ছাড়াই এটি পেতে আপনি db.users.find ()। কদর্য () এর মতো কিছু করতে পারেন।
staackuser2

5
+1 এটি দুর্দান্ত। যাদের $ হোম ফোল্ডারে একটি .mongorc.js ফাইল নেই; আপনি এই ফাইলটি তৈরি করতে এবং এতে কমান্ড যুক্ত করতে পারেন। শেলটি পুনরায় চালু করার পরে, এটি কাজ করে!
পূর্ববর্তী_প্রেমী

এই বিকল্পটি সক্ষম করা হয়েছে এমন কোনও ক্লিমে বা মঙ্গো শেলের মধ্যে আমি কীভাবে যাচাই করব? মানে, এর জন্য কি একটি বিশেষ আদেশ আছে, যেমন mongo --checkConf 'pretty'কল করে নয়db.collection.find().limit(1)
সবুজ

1
@ staackuser2, সেই লিঙ্কটি ভাঙা বলে মনে হচ্ছে :(
micseydel

এই প্রশ্নের স্বীকৃতি হিসাবে গ্রহণযোগ্য উত্তর হওয়া উচিত: কীভাবে এটি একটি ডিফল্ট বিকল্প করতে হয়। ব্যবহারকারী ইতিমধ্যে। ব্যাখ্যা () পদ্ধতির সাথে পরিচিত তবে প্রতিবার এটি লিখতে চান না
এরিয়েল মোনাকো

54

(দ্রষ্টব্য: এটি আপডেট হওয়া প্রশ্নের উত্তর)

আপনি কেবল সিএলআই এ এটি করতে পারেন:

echo DBQuery.prototype._prettyShell = true >> ~/.mongorc.js

এবং এটি সর্বদা সুন্দর ফলাফল আউটপুট যাচ্ছে।


1
এটি আমার পক্ষে নিখুঁতভাবে কাজ করেছে। | মঙ্গোডিবি শেল সংস্করণ: 2.6.7 এবং ওহ-মাই-জেএস সংস্করণ e55c715
tjfwalker

20

যেহেতু এটি মূলত একটি জাভাস্ক্রিপ্ট শেল, তাই আপনি এটি ব্যবহার করতে পারেন toArray():

db.collection.find().toArray()

তবে এটি সংগ্রহের সমস্ত দস্তাবেজ মুদ্রণ করবে যা এর বিপরীতে pretty()আপনাকে পুনরাবৃত্তি করতে দেবে allow উল্লেখ করুন: http://docs.mongodb.org/manual/references/method/cursor.toArray/


2
মজার বিষয় যথেষ্ট, কনসোল থেকে .toArray()ফাংশন ফাংশন চেয়ে ভাল ফর্ম্যাটেড JSON আউটপুট .pretty()। অর্থাত্: আমার সংগ্রহের প্রথম রেকর্ডটি .pretty(){ "_id" : "VERSION", "v" : "1.5" }.toArray()
বাকীগুলির

17

ওহ তাই আমি অনুমান করি। ব্যাখ্যা () সমান:

db.collection.find().forEach(printjson);

8

মঙ্গো-হ্যাকার (নোড মডিউল) ব্যবহার করে দেখুন, এটি সর্বদা সুন্দরভাবে প্রিন্ট করে। https://github.com/TylerBrock/mongo-hacker

আরও এটি মঙ্গো শেলকে উন্নত করে (যেমনটি কেবল ভার> ২.৪ সমর্থন করে, বর্তমান ভেরি 3.0 হয়), এর মতো

  • Colorization
  • অতিরিক্ত শেল কমান্ড (গণনা নথি / গণনা ডক্স / ইত্যাদি)
  • API সংযোজন (db.collection.find ({...})। শেষ (), db.collection.find ({...})
  • সমষ্টি ফ্রেমওয়ার্ক

প্রযোজনা চলাকালীন সময়ে আমি ব্যবহার করছি, এখনও কোনও সমস্যা নেই।


আমার যদি মংডোব না থাকে, সবেমাত্র উল্কা ইনস্টল করা হয়?
পেন্টেন্টি

দ্রষ্টব্য: আপনি যখন এনপিএম ব্যবহার করে মঙ্গো-হ্যাকার ইনস্টল করেন, তখন তা দৃশ্যত ওভাররাইট হয়ে যায় $HOME/.mongorc.js
হুব্রো

1

প্রশ্নে পেয়েছেন তবে বাহ্যিক-বোঝা মোঙ্গো থেকে এটি কীভাবে মুদ্রণ করা যায় তা বুঝতে পারেননি could তাই:

এটি কনসোলের জন্য কাজ করে: এবং কনসোলে অগ্রাধিকার পাওয়া যায় তবে বহিরাগত মঙ্গো-বোঝা জাভাস্ক্রিপ্টে কাজ করে না:

db.quizes.find().pretty()

এটি বাহ্যিক মঙ্গো-বোঝা জাভাস্ক্রিপ্টে কাজ করে:

db.quizes.find().forEach(printjson)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.