Maison  >  Article  >  développement back-end  >  Yii2 两个模块(module)间的数据需要相互调用,如何设计才能最大程度降低耦合性?

Yii2 两个模块(module)间的数据需要相互调用,如何设计才能最大程度降低耦合性?

WBOY
WBOYoriginal
2016-12-01 01:27:431830parcourir

有A,B两个模块,A模块数据库中内容修改要使B模块的数据跟着一起修改,A模块还可以读取B模块的一些数据。

该如何设计才能最大程度降低模块间的耦合性?

回复内容:

有A,B两个模块,A模块数据库中内容修改要使B模块的数据跟着一起修改,A模块还可以读取B模块的一些数据。

该如何设计才能最大程度降低模块间的耦合性?

把Customer当成A,Order当成B,这个例子中就修改了B中的值。
$customer = Customer::findOne(123);
$order = new Order();
$order->subtotal = 100;
// ...

// setting the attribute that defines the "customer" relation in Order
$order->customer_id = $customer->id;
$order->save();

新增一个services层用来处理业务逻辑。
就不会出现你这个跨模块调用的问题了。因为services层跟模块无关。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn