المجلدات هي ملفات تحتوي على بيانات وصفية فقط ويمكن استخدامها لتنظيم الملفات في Google Drive. وتتسم هذه الصفحات بالسمات التالية:
- المجلد هو ملف يحتوي على نوع MIME
application/vnd.google-apps.folder
وليس له امتداد. - يمكن استخدام الاسم المستعار
root
للإشارة إلى المجلد الجذر في أي مكان يتم توفير معرّف ملف فيه.
لمزيد من المعلومات عن حدود المجلدات في Drive، يُرجى الاطّلاع على الحدود القصوى للملفات والمجلدات.
يوضّح هذا الدليل كيفية تنفيذ بعض المهام الأساسية المتعلّقة بالمجلدات.
إنشاء مجلد
لإنشاء مجلّد، استخدِم الطريقة files.create
مع application/vnd.google-apps.folder
نوع MIME وعنوان. يوضّح نموذج الرمز البرمجي التالي كيفية إنشاء مجلد باستخدام مكتبة عملاء:
Java
Python
Node.js
PHP
NET.
إنشاء ملف في مجلد محدّد
لإنشاء ملف في مجلد معيّن، استخدِم الطريقة files.create
وحدِّد معرّف المجلد في سمة
parents
للملف.
تحتوي السمة parents
على رقم تعريف المجلد الرئيسي الذي يحتوي على الملف.
يمكن استخدام السمة parents
عند إنشاء ملفات في مجلد بمستوى أعلى أو أي مجلد آخر.
يمكن أن يتضمّن الملف مجلدًا رئيسيًا واحدًا فقط، ولا يمكن تحديد مجلدات رئيسية متعددة.
يوضِّح نموذج التعليمات البرمجية التالي كيفية إنشاء ملف في مجلد معيّن باستخدام مكتبة العميل:
Java
Python
Node.js
PHP
NET.
نقل الملفات بين المجلدات
لنقل الملفات، عليك تعديل رقم تعريف موقع parents
.
لإضافة عناصر رئيسية أو إزالتها من ملف حالي، استخدِم طريقة files.update
مع مَعلمتَي الطلب addParents
و
removeParents
.
يمكن أن يتضمّن الملف مجلدًا رئيسيًا واحدًا فقط، ولا يمكن تحديد مجلدات رئيسية متعددة.
يوضّح نموذج الرمز البرمجي التالي كيفية نقل ملف بين المجلدات باستخدام مكتبة العميل التالية:
Java
Python
Node.js
PHP
NET.
حدود الملفات والمجلدات
تفرض ملفات ومجلدات Drive بعض حدود مساحة التخزين.
الحد الأقصى المسموح به لعدد العناصر لكل مستخدم
يمكن أن يمتلك كل مستخدم ما يصل إلى 500 مليون عنصر أنشأه هذا الحساب. وعند بلوغ الحد الأقصى، لن يتمكّن المستخدم من إنشاء العناصر أو تحميلها في Drive. وسيظل بإمكانه الاطّلاع على العناصر الحالية وتعديلها. لإنشاء ملفات مرة أخرى، يجب على المستخدمين حذف العناصر نهائيًا أو استخدام حساب مختلف. لمزيد من المعلومات، يُرجى الاطّلاع على المهملات أو حذف الملفات والمجلدات.
العناصر التي يتم احتسابها ضمن هذا الحد هي:
- العناصر التي أنشأها المستخدم أو حمّلها في Drive
- العناصر التي أنشأها المستخدم ولكنها مملوكة الآن لشخص آخر
- العناصر في المهملات
- الاختصارات
- الاختصارات التابعة لجهات خارجية
العناصر التي لا يتم احتسابها ضمن هذا الحد هي:
- العناصر المحذوفة نهائيًا
- عناصر تمت مشاركتها مع المستخدم ولكنها مملوكة لشخص آخر
- العناصر التي يملكها المستخدم ولكن أنشأها شخص آخر
تؤدي محاولات إضافة أكثر من 500 مليون عنصر إلى عرض استجابة رمز حالة HTTP
activeItemCreationLimitExceeded
.
وتجدر الإشارة إلى أنّه على الرغم من عدم وجود حدّ أقصى لعدد العناصر التي يمكن أن يمتلكها حساب الخدمة، ينطبق الحدّ الأقصى المسموح به الذي يبلغ 500 مليون عنصر على عدد العناصر التي يمكن لحساب الخدمة إنشاؤها.
الحد الأقصى لعدد عناصر المجلد
يبلغ الحد الأقصى لعدد العناصر في كل مجلد في "ملفاتي" الخاص بالمستخدم 500,000 عنصر. ولا ينطبق هذا الحد على المجلد الجذر في "ملفاتي". العناصر التي يتم احتسابها ضمن هذا الحد هي:
- المجلدات
- الملفات جميع أنواع الملفات، بغض النظر عن ملكية الملف
- الاختصارات/3}. يتم احتسابه كعنصر واحد داخل المجلد، حتى إذا كان العنصر الذي يشير إليه ليس داخل هذا المجلد. لمزيد من المعلومات، يُرجى الاطّلاع على إنشاء اختصار لملف في Drive.
- الاختصارات التابعة لجهات خارجية يتم احتسابه كعنصر واحد داخل المجلد، حتى إذا كان العنصر الذي يشير إليه ليس داخل هذا المجلد. لمعرفة مزيد من المعلومات، يُرجى الاطّلاع على إنشاء ملف اختصار للمحتوى المُخزَّن من خلال تطبيقك.
لمزيد من المعلومات عن حدود المجلدات، يمكنك الاطّلاع على حدود المجلدات في Google Drive.
الحد الأقصى لعمق المجلد
لا يمكن أن يحتوي قسم "ملفاتي" الخاص بالمستخدم على أكثر من 100 مستوى من المجلدات المُدمجة. ويعني هذا أنّه لا يمكن تخزين مجلد فرعي ضمن مجلد يتجاوز عمقه 99 مستوى. لا ينطبق هذا القيد إلا على المجلدات الفرعية. إنّ نوع MIME للملف الفرعي الذي يختلف عن
application/vnd.google-apps.folder
معفى من هذا القيد.
على سبيل المثال، في المخطّط البياني التالي، يمكن دمج مجلد جديد داخل المجلد رقم 99 ولكن ليس داخل المجلد رقم 100. ومع ذلك، يمكن للمجلد رقم 100 تخزين ملفات مثل أي مجلد آخر على Drive:
تؤدي محاولة إضافة أكثر من 100 مستوى من المجلدات إلى عرض استجابة رمز حالة HTTP
myDriveHierarchyDepthLimitExceeded
.