Portal kullanıcılarının ilişkili iş ortağı verilerini değiştirebileceği bir modül oluşturmaya çalışıyordum. Ancak, yalnızca yönetici kullanıcıların yapılandırmaları değiştirebileceği bir güvenlik hatası alıyorum.Portal kullanıcı Odoo 8'deki kendi iş ortağı verilerini nasıl değiştirebilir?
Dosya ".../sunucu/OpenERP/addons/baz/res/res_config.py", hat 541, içinde zam openerp.exceptions.AccessError yürütmek (_ ("Yalnızca yöneticiler değiştirebilir
ben o güvenlik böyle erişim sağlayarak çalıştı ayarları ")):
access_config_portal, portal_partner_config.settings, model_portal_partner_config_settings, base.group_portal, 1,1,0,0
Ama ... ben hata res_config.py o SUPERUSER olmak kullanıcıları kontrol var işlevi yürütmek olduğunu gösteriyor nedeniyle bu derste öyle düşünüyorum işe yaramadı: Bunun gibi
if uid != SUPERUSER_ID and not self.pool['res.users'].has_group(cr, uid, 'base.group_erp_manager'):
raise openerp.exceptions.AccessError(_("Only administrators can change the settings"))
:
class Configuration(models.TransientModel):
_inherit = 'res.config.settings'
_name = 'portal_partner_config.settings'
name = fields.Char()
street = fields.Char()
city = fields.Char()
@api.model
def get_default_inova_values(self,fields):
users = self.pool.get('res.users')
current_user = users.browse(self._cr, self._uid, self._uid, context=self._context)
name = current_user.partner_id.name
street = current_user.partner_id.street
city = current_user.partner_id.city
return {
'name': name,
'street': street,
'city': city,}
@api.one
def set_inova_values(self):
users = self.pool.get('res.users')
current_user = users.browse(self._cr, self._uid, self._uid, context=self._context)
users.sudo().write(self._cr, self._uid, current_user.id, {'name': self.name,
'street': self.street,
'city': self.city,
},
context=self._context)
Portal kullanıcılarına özel verilerini değiştirmenin, kredi kartı gibi bir ödeme kaynağını ilişkilendirmenin bir yolu var mı?