میتونید از تابع های m2o_to_external و external_to_m2o و follow_m2o_relations استفاده کنید
تابع m2o_to_external یک تابع کمکی (modifier) است که برای کار با فیلدهای many2one در کانکتورها استفاده میشود و هدف اصلی آن تبدیل رکورد many2one به شناسهی خارجی (external ID) است.
تابع external_to_m2o برای نگاشت شناسههای خارجی به رکوردهای Odoo استفاده میشود، به خصوص برای فیلدهای many2one. هدف این تابع این است که شناسههای خارجی که از سیستمهای خارجی (مثل Magento) دریافت میشوند، به رکوردهای داخلی Odoo تبدیل کند.
تابع follow_m2o_relations در Odoo برای پیمایش و دنبال کردن روابط many2one استفاده میشود و در نهایت مقدار فیلد نهایی را برمیگرداند. این تابع به شما امکان میدهد به طور مستقیم از یک فیلد مرتبط (که ممکن است چندین سطح رابطه many2one داشته باشد) به مقدار مورد نظر دسترسی پیدا کنید.
داکیومنت کانکتور mapper
برای فیلدهای رابطهای many2many و one2many که به صورت لیست هست، روش نگاشت فرزند و یا Children Mapper کار میکنه. اما برای حالت Many2one نمیدونم چه راهی در نظر گرفته شده.
استفاده از تابعهایی مثل m2o_to_external و external_to_m2o و follow_m2o_relations هم فرضیاتی دارد که باید حتما در پیاده سازی در نظر گرفته شود. من هنوز متوجه نشدم که فرضیاتی که در این موارد در نظر گرفته شده چی هست.