تصدير نص مخصص من قاعدة البيانات إلى YML

Admin interface allows overwriting any stranslations which is very healful not just for utilizing community translation while updating them with custom phrases that suit a specific community, but at the same time it is also a very good way to gradually translate a new language, without the need of updating the code, hence rebuilding the cache. However, it would be great if the customized translations can be exported from the database and somehoe merged back into the corresponding YAML files to make it available in the main repository. Is there a way of doing that which I am not aware of?

3 إعجابات

I don’t think there is a job for this but 100% support these two tasks, which could help you out here

rake export:locale_overrides:server > server.xx.yml
rake export:locale_overrides:client > client.xx.yml
7 إعجابات

هل يعرف أحد ما إذا كان أي شخص قد صنع هذا بعد؟

@sam لقد قمت بتشغيل المهمة لتصدير اللغات المحلية ولكنها لا تعمل
لدي الرسالة أدناه

لا أعرف كيفية بناء المهمة 'export:locale_overrides:server' (انظر قائمة المهام المتاحة باستخدام `rake --tasks`)

أي فكرة؟

لم يقم أحد بالمهمة بعد، سأضيف pr-welcome للتوضيح

إعجابَين (2)

هذا شيء كنت أفكر فيه أيضًا، وقد أنشأت طلب سحب (PR):

3 إعجابات

لإغلاق الحلقة هنا، عملت أنا و @mqmenchaca على هذا في نفس الوقت دون علم الآخر بالعمل عليه. وقمنا بإنشاء طلبات سحب (PRs) بفارق ساعات قليلة فقط! لقد قمت بالفعل بدمج طلب السحب الخاص بي في النواة (core) قبل رؤية طلب ماكس، لذلك للأسف لا يمكننا دمج عمله في النواة. أقدر المساهمة بشدة على الرغم من ذلك، @mqmenchaca!

الالتزام (commit) الذي يضيف هذه الميزة هو هذا: DEV: Add a rake task to export/import translation overrides (#18487) · discourse/discourse@4d80110 · GitHub

للتصدير، قم بتشغيل bin/rake export:translation_overrides (سيقوم بإنشاء ملف JSON مع التجاوزات).

للاستيراد في مثيل منفصل، انسخ ملف JSON المصدر إليه وقم بتشغيل bin/rake import:file[\"filename\"].

4 إعجابات

مرحباً. من فضلك، هل يمكنك وصف خطوات تشغيله؟

./launcher enter app
bin/rake export:translation_overrides

يعيد:

rake aborted!
ActiveRecord::NoDatabaseError: لم نتمكن من العثور على قاعدة بياناتك: discourse. والتي يمكن العثور عليها في ملف تكوين قاعدة البيانات الموجود في config/database.yml

يبدو أن هناك مشكلة في بيئتك. عندما أدخل الحاوية في نسختي المستضافة ذاتيًا، يمكنني تشغيل أوامر rake بشكل جيد.

إعجاب واحد (1)

أنا أستخدم Discourse خلف Nginx، هل يمكن أن يكون هذا مرتبطًا؟ هل من الممكن استخدام الأمر باستخدام قاعدة بيانات خارج الحاوية؟

حسنًا، لقد أجريت بعض الاختبارات وقمت بتصدير الملف.

إذا قمت بتعديل هذا الملف بتغيير es_XX إلى es (وليس أي شيء آخر، مع الاهتمام بتنسيق الملف وترميز الأحرف) واستيراد الملف المصدر سابقًا، فهل سينجح ذلك؟

أريد نقل التجاوزات السابقة إلى اللغة الافتراضية es في نسختنا :slight_smile: