コンテンツへスキップ
メニュー
この質問にフラグが付けられました
1 返信
5390 ビュー

Hi,

How to define default country in webshop checkout form?

アバター
破棄
最善の回答

In file /usr/lib/python2.7/dist-packages/openerp/addons/website_sale/controllers/main.py
find strings
        # Default search by user country
        if not checkout.get('country_id'):
            country_code = request.session['geoip'].get('country_code')
            if country_code:
                country_ids = request.registry.get('res.country').search(cr, uid, [('code', '=', country_code)], context=context)
                if country_ids:
                    checkout['country_id'] = country_ids[0]

than, if you wan to "hardcode" default contry, do somthing like this

        # Default search by user country
        if not checkout.get('country_id'):
            checkout['country_id'] = 231 #hardcode Ukraine #country_ids[0]
            #country_code = request.session['geoip'].get('country_code')
            #if country_code:
            #    country_ids = request.registry.get('res.country').search(cr, uid, [('code', '=', country_code)], context=context)
            #    if country_ids:
            #        checkout['country_id'] = country_ids[0]

Other country id`s you can find in database
SELECT *   FROM res_country;

Also you must understand that this is a dirty hack and it will disapeared after yuo update odoo.
 

アバター
破棄
関連投稿 返信 ビュー 活動
2
7月 16
8929
1
2月 18
13067
1
5月 16
6245
0
6月 15
4232
0
5月 17
9340