我在Windows上使用odoo v12。
我已经按照HowTo中的步骤创建了一个模块Saadoodoo
。我的问题是我无法使这个新模块出现在odoo模块列表中。
我正在使用以下命令
python.exe odoo-bin" -d SaadoIncLocal -i Saadoodoo --addons-path D:\PythonDev\Odoo
似乎odoo只是简单地忽略了命令并正常启动服务器,因为该模块未出现在应用程序列表中(即使在选择开发人员模式时也是如此)。
我认为问题可能出在插件路径上,所以我在默认odoo路径下将模块与C:\Program Files (x86)\Odoo 12.0\server\odoo\addons
中的odoo模块一起添加,并在odoo界面上更新了应用程序,但问题仍然存在。启动和停止服务器也无济于事。
我在做什么错了?
关于, 艾哈迈德·萨达拉(Ahmed Saadalla)
答案 0 :(得分:3)
在addons_path
中添加新模块后,您必须打开debug/developer
模式,转到Apps > Update modules list
,从搜索中删除Apps
过滤器,然后搜索模块。
请不要忘记为__manifest__.py
添加适当的数据,这对于odoo插件很重要。
如果仍然有问题,可以使用scaffold
的{{1}}选项来创建空模块。
odoo-bin
这将在当前工作目录中创建一个包含所有必要骨架文件的空模块,您只需将其移至addons文件夹,相应地重命名变量和文件即可。
答案 1 :(得分:2)
尝试本指南, https://www.cybrosys.com/blog/how-to-create-module-in-odoo12
创建模块并不难,该指南将为您提供帮助
答案 2 :(得分:1)
有两个原因导致您看不到该模块:-
1。 您尚未更新数据库
两种更新数据库的方法:-
Terminal中的1.1使用此命令来更新模块和数据库
./ odoo-bin -c debian / odoo.conf -d {NAME_OF_ODOO_DATABASE} -u {NAME_OF_THE_NEW_MODULE}
1.2。从前端
通过在开发者工具选项->激活开发者模式下转到设置->激活开发者模式
现在转到应用列表,然后选择选项更新应用列表。
2。 您尚未在debian / odoo.conf文件中配置插件路径
确保已在debian文件夹内的odoo.conf文件中添加了custom-addons文件夹的addons_path
答案 3 :(得分:0)
为什么不简单地使用这些命令
var map = [{
key: ['Package','201907'],
value: 4200000},
{
key: ['License','201907'],
value: 5000000}]
var myJSON = [{
TimeCheck : '201908',
service : null,
TotalAmount : 0
},
{
TimeCheck : '201907',
service : 'License',
TotalAmount : 5000000
},
{
TimeCheck : '201908',
service : 'License',
TotalAmount : 5000000
},
{
TimeCheck : '201908',
service : 'Package',
TotalAmount : 1200000
},
{
TimeCheck : '201908',
service : 'Package',
TotalAmount : 3000000
}]
var labels = [], dataPackage = [], dataLisence = [];
var TotalAmountP = 0;
var TotalAmountL = 0;
var map = [{ key : ['Service','TimeCheck'], value : 0 }];
for (var i = 0; i < map.length; i++) {
if (labels.indexOf(myJSON[i].TimeCheck.substr(0, 4) + '/' + myJSON[i].TimeCheck.substr(4, 2)) == -1) {
labels.push(myJSON[i].TimeCheck.substr(0, 4) + '/' + myJSON[i].TimeCheck.substr(4, 2));
map[i].key[1] = myJSON[i].TimeCheck.substr(0, 4) + '/' + myJSON[i].TimeCheck.substr(4, 2);
}
if (myJSON[i].service == "Package") {
map[i].key[0] = myJSON[i].service;
for (var j = 0; j < map.length; j++) {
if (map[i].key[0] !== map[j].key[0] && map[i].key[1] !== map[j].key[1]) {
map[i].key[0] = myJSON[i].service;
map[i].value = myJSON[i].TotalAmount;
} else {
var newValue = map[j].value + myJSON[i].TotalAmount
map[j].value = newValue;
}
}
}
else if (myJSON[i].service == "License") {
map[i].key[0] = myJSON[i].service;
for (var j = 0; j < map.length; j++) {
if (map[i].key[0] !== map[j].key[0] && map[i].key[1] !== map[j].key[1]) {
map[i].key[0] = myJSON[i].service;
map[i].value = myJSON[i].TotalAmount;
} else {
var newValue = map[j].value + myJSON[i].TotalAmount
map[j].value = newValue;
}
}
}
}
console.log(map);
答案 4 :(得分:0)
指令命令module-name modulepath
答案 5 :(得分:0)
哦,一旦您的模块准备就绪,请转到Windows中的Odoo目录,导航至自定义插件,您将看到所有可用模块的列表。在其中粘贴新模块。现在,再次打开Odoo,转到Apps,然后更新模块列表。然后在应用列表中搜索您的应用。确保开发人员模式已激活
答案 6 :(得分:0)
您是否在“应用程序”菜单中单击更新应用程序列表? 这是Odoo 11的屏幕截图,应在Odoo 12中应用,但位置可能不同。
答案 7 :(得分:0)
./odoo-bin scaffold yourModuleName destinationDirectory
(odoo_version> = 10)./openerp-server scaffold your_module_name destinationDirectory
(odoo_version <10)请使用配置文件运行odoo(这很容易,没有任何错误)
运行以下命令:python3 odoo-bin --save --config odoo.cfg --stop-after-init
这将保存odoo.cfg
文件,将其打开,并在配置文件顶部定义的addons_path
变量中添加您的自定义模块路径
答案 8 :(得分:0)
使用模式调试,转到您的应用,单击更新应用列表