使用commerce coupon,现在想用代码创建coupon code 代码如下: $coupon = commerce_coupon_create('commerce_coupon_pct'); commerce_coupon_save($coupon); 出现的问题是:这段代码写在module文件中运行,就会保存两条数据到数据库中, 但写在主题文件中,是正常的,只保存了一条数据 请问这是什么原因 论坛: 有问必答Drupal版本: drupal7 哪种是正确的呢?如果放在主题里面的正确,就放在主题里面。 哪种是正确的呢?如果放在主题里面的正确,就放在主题里面。 如果放在模块里面,是正确的,就放在模块里面。 放在主题里面是正确的,但这个放主题里面不好吧,是一个自定义 放在主题里面是正确的,但这个放主题里面不好吧,是一个自定义模块要用的,我看了一下mysql的记录,确实插入了两条,前后差几秒钟,但代码真的只有一次,有没有什么方法可以看到是哪些php语句对数据库写入了内容 我现在又发现了点问题,提供一下,看老葛你能不能帮我分析下。 我现在又发现了点问题,提供一下,看老葛你能不能帮我分析下。 现在的代码是这样的: function generate_coupon(){ $coupon = commerce_coupon_create('commerce_coupon_pct'); commerce_coupon_save($coupon); } function hook_init() { generate_coupon(); } 我发现是这样的,如果我点击打开任意一个页面,触发hook init,这时是正常的,只生成一个coupon,但如果我再刷新这个页面,就会生成两个,是不是有什么机制在起作用? 你就先放在主题里面吧,以后或许会慢慢明白为什么的。 因为被 你就先放在主题里面吧,以后或许会慢慢明白为什么的。 因为被调用了两次而已, 能不能大致说一下,给点思路也行,我自己去查 能不能大致说一下,给点思路也行,我自己去查 这个需要你自己去调试。 这个需要你自己去调试。
放在主题里面是正确的,但这个放主题里面不好吧,是一个自定义 放在主题里面是正确的,但这个放主题里面不好吧,是一个自定义模块要用的,我看了一下mysql的记录,确实插入了两条,前后差几秒钟,但代码真的只有一次,有没有什么方法可以看到是哪些php语句对数据库写入了内容
我现在又发现了点问题,提供一下,看老葛你能不能帮我分析下。 我现在又发现了点问题,提供一下,看老葛你能不能帮我分析下。 现在的代码是这样的: function generate_coupon(){ $coupon = commerce_coupon_create('commerce_coupon_pct'); commerce_coupon_save($coupon); } function hook_init() { generate_coupon(); } 我发现是这样的,如果我点击打开任意一个页面,触发hook init,这时是正常的,只生成一个coupon,但如果我再刷新这个页面,就会生成两个,是不是有什么机制在起作用?
哪种是正确的呢?如果放在主题里面的正确,就放在主题里面。
哪种是正确的呢?如果放在主题里面的正确,就放在主题里面。
如果放在模块里面,是正确的,就放在模块里面。
放在主题里面是正确的,但这个放主题里面不好吧,是一个自定义
放在主题里面是正确的,但这个放主题里面不好吧,是一个自定义模块要用的,我看了一下mysql的记录,确实插入了两条,前后差几秒钟,但代码真的只有一次,有没有什么方法可以看到是哪些php语句对数据库写入了内容
我现在又发现了点问题,提供一下,看老葛你能不能帮我分析下。
我现在又发现了点问题,提供一下,看老葛你能不能帮我分析下。
现在的代码是这样的:
我发现是这样的,如果我点击打开任意一个页面,触发hook init,这时是正常的,只生成一个coupon,但如果我再刷新这个页面,就会生成两个,是不是有什么机制在起作用?
你就先放在主题里面吧,以后或许会慢慢明白为什么的。 因为被
你就先放在主题里面吧,以后或许会慢慢明白为什么的。
因为被调用了两次而已,
能不能大致说一下,给点思路也行,我自己去查
能不能大致说一下,给点思路也行,我自己去查
这个需要你自己去调试。
这个需要你自己去调试。