首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BeepBeep与ErlyDB集成问题

BeepBeep与ErlyDB集成问题
EN

Stack Overflow用户
提问于 2009-08-05 08:26:49
回答 1查看 342关注 0票数 3

继续我和Erlang和ErlyDB的冒险。我试图让ErlyDB和BeepBeep一起工作

当在ErlyDB环境之外运行时,我的BeepBeep设置正确工作(参见调试ErlyDB和MySQL)。我基本上采用了工作代码,并试图让它在BeepBeep中运行。

我的控制器中有以下代码:

代码语言:javascript
复制
handle_request("index",[]) ->
  erlydb:start(mysql,Database),
  erlydb:code_gen(["thing.erl"],mysql), 
  NewThing = thing:new_with([{name, "name"},{value, "value"}]),
  thing:save(NewThing),
  {render,"home/index.html",[{data,"Hello World!"}]};

当我调用URL时,响应输出“服务器错误”。没有报告其他错误或异常信息。

我尝试过将调用包装在try/catch中,以查看是否存在潜在错误--对thing:new_with(),的调用肯定有异常,但没有进一步的信息可用。

堆栈跟踪报告:

代码语言:javascript
复制
{thing,new,[["name","value"]]}
{home_controller,create,1}
{home_controller,handle_request,3}
{beepbeep,process_request,4}
{test_web,loop,1}
{mochiweb_http,headers,4}
{proc_lib,init_p_do_apply,3}
EN

回答 1

Stack Overflow用户

发布于 2009-08-10 14:20:55

使用模式匹配来断言事物执行到了对thing的调用:new/1:

代码语言:javascript
复制
ok = erlydb:start(mysql,Database),
ok = erlydb:code_gen(["thing.erl"],mysql), 

您只包含堆栈跟踪,还可以查看异常消息。我怀疑错误是您得到了一个'undef‘异常。但要确认确实如此。堆栈跟踪中的第一行表示调用对象的问题:以"name“、"value”作为参数的new/1。

稍微奇怪的是,您在堆栈跟踪中显示了handle_request的一个不调用home_ {home_controller,create,1}的子句:create/1。handle_request/2函数中的其他子句是什么样子的?

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1231870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档