起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2103|回复: 7

[处理中3] 从baas切换到baas.php模式出现userdata错误

[复制链接]

6

主题

19

帖子

49

积分

新手上路

Rank: 1

积分
49
QQ
发表于 2016-8-11 09:50:04 | 显示全部楼层 |阅读模式
因为需要部署虚拟空间,跟着这个帖子在学习http://docs.wex5.com/ali-web-php/

其中,需要将baas模式 切换到baas.php模式。
1.数据库使用外网数据库,建立数据源成功。
2.修改db.config.m中,选中新建的数据源。
3.在baas.php中,建立文件夹mytest,新建服务mytest.service.m文件。
4.新建action.包括了query & save
5.在w文件中使用bassdata组件,连接表,把bassdata加载到list组建,下面加上output 绑定字段。

用浏览器运行,就出现
“Cannot read property 'userdata' of undefined” 的错误

如果页面中没有baasdata组件,则会正常显示。

以上都是在本机测试,还没有放到虚拟空间。

感觉上应该还是数据库没有连接好。但是,在之前使用baas模式(不是切换后的baas.php模式)的时候,一切正常,网络数据库也可以访问.

请问,这两种模式切换,是这样操作吗?出现这个问题,应该怎么解决?

谢谢。

6

主题

19

帖子

49

积分

新手上路

Rank: 1

积分
49
QQ
 楼主| 发表于 2016-8-11 09:53:06 | 显示全部楼层
补充一下,在切换到baas.php模式后,原来的baas文件夹中,已经删除了mytest.service.m文件。

只有baas.php/mytest/mytest.service.m
回复 支持 反对

使用道具 举报

发表于 2016-8-11 14:10:47 | 显示全部楼层
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

6

主题

19

帖子

49

积分

新手上路

Rank: 1

积分
49
QQ
 楼主| 发表于 2016-8-11 17:48:29 来自手机 | 显示全部楼层
liangyongfei 发表于 2016-8-11 14:10
http://bbs.wex5.com/forum.php?mod=redirect&goto=findpost&ptid=88354&pid=165235777

这个帖子我也看了,和帖子最后两楼的情况一样,我完全做一个全新的w文件,跟以前开发的没有任何关系,就是简单了解数据库,就出现了userdata 的问题。头疼得很。
回复 支持 反对

使用道具 举报

发表于 2016-8-12 09:42:54 | 显示全部楼层
ynwex5gz 发表于 2016-8-11 17:48
这个帖子我也看了,和帖子最后两楼的情况一样,我完全做一个全新的w文件,跟以前开发的没有任何关系,就 ...

先试试平台案例!是否报错??
如果正常!就用你的.w去访问 平台案例提供的action!如果报错就是baasData组件的原因!
如果还正确,就是action定义出问题了!请参考平台案例cation的写法!再重新做一下!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

6

主题

19

帖子

49

积分

新手上路

Rank: 1

积分
49
QQ
 楼主| 发表于 2016-8-13 12:15:01 | 显示全部楼层
本帖最后由 ynwex5gz 于 2016-8-13 12:16 编辑
liangyongfei 发表于 2016-8-12 09:42
先试试平台案例!是否报错??
如果正常!就用你的.w去访问 平台案例提供的action!如果报错就是baasData ...

采用baas.php模式的时候,新建了test.service.m服务,在这个服务中,新建table action, 数据库选takeout , 表选takeout_food.保存,模型编译,刷新。
测试页面w文件中,加入baasdata组件,table name 选(test.service.m服务中的)takeout_food,第一次读不到idColumn,重启wex5,再操作,就可以读到idColumn.本机浏览器访问,正常。

baas.php中再次新建test2.service.m服务,新建数据表action,选择配置好的网络数据库(测试能够连接,并用本地mysql管理软件直接可以操作),选择已经建好的表tabletest.保存,模型编译,刷新。
测试页面w文件中,加入bassdata2组件,tableName选(test2.service.m服务中的)tabletest表,再次找不到idColumn。重启wex5,再操作一次,可以读到idColumn。本机浏览器访问w文件,出现“Cannot read property 'user data' of undefined”

1.为什么每次都要重启后,才能读到idColumn。不论是连本地外卖数据库,还是网络数据库?

2.两次建立action的步骤方法完全一样,只是选择的本地和外网的差别,所谓参考软件自带到action,应该怎么参考,自己写源代码重新来一次???

3,考虑到有可能是数据表结构的问题,没有用sql导入的方式,用wex5带度mysql管理软件,建表,设定主键,填入数据做过一次,也用wex5中间“数据库”那个界面做过一次,都不行。

4.还有什么解决思路???

谢谢回复
回复 支持 反对

使用道具 举报

发表于 2016-8-15 11:37:44 | 显示全部楼层
ynwex5gz 发表于 2016-8-13 12:15
采用baas.php模式的时候,新建了test.service.m服务,在这个服务中,新建table action, 数据库选takeout , ...

1.如果模型编译选择调试模式  那么就不需要每次都重启了!  非调试模式的模型编译确实需要重启才能加载新编译的资源!
2. 可以把平台案例中的数据源,设置成外网连接!然后试试能否正常运行呢??

还有 就是,代码都是开源的!在source 目录下!可以自己调试代码看一下!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

13

主题

39

帖子

107

积分

初级会员

Rank: 2

积分
107
QQ
发表于 2017-5-16 20:38:39 | 显示全部楼层
解决了吗?看了这么多,没有一个给出答案的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-8 06:48 , Processed in 0.101765 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表