दिए गए url का url उपनाम प्राप्त करने के लिए नीचे दिए गए कोड का उपयोग करके मेरे मॉड्यूल में:
$alias = \Drupal::service('path.alias_manager')->getPathByAlias($_POST['url']);
लेकिन एक मैं अपने मॉड्यूल में स्वचालित समीक्षा ( http://pareview.sh/ ) चला रहा हूं जो मुझे चेतावनी से नीचे मिल रहा है:
16 | चेतावनी | कक्षाओं में \ Drupal कॉल से बचना चाहिए, इसके बजाय निर्भरता इंजेक्शन का उपयोग करें
मैं निर्भरता इंजेक्शन का उपयोग करके कोड से ऊपर कैसे अपडेट कर सकता हूं? मेरा पूरा क्लास कोड नीचे दिया गया है।
<?php
namespace Drupal\my_module\Controller;
use Drupal\Core\Controller\ControllerBase;
/**
* MyModule Class defines ajax callback function.
*/
class MyModule extends ControllerBase {
/**
* Callback function for ajax request.
*/
public function getUserContent() {
$alias = \Drupal::service('path.alias_manager')->getPathByAlias($_POST['url']);
$alias = explode('/', $alias);
$my_module_views = views_embed_view('my_module', 'default', $alias[2]);
$my_module= drupal_render($my_module_views);
return array(
'#name' => 'my_module_content',
'#markup' => '<div class="my_module_content">' . $my_module. '</div>',
);
}
}