私はPrestaShopで管理タブを実装しようとしています。私はデータベースからレコードを見せたい。編集、更新、削除オプションが必要な各レコードについてPrestaShop:管理者タブを作成し、編集/更新/削除アクションでレコードを表示
class EblPaymentModel extends ObjectModel
{
private $_catTree = array();
public $id;
public $cart_id;
public $order_id;
public $ebl_order_id;
public $ebl_status;
public $ebl_result;
public $ebl_result_code;
public $ebl_card_number;
public $ebl_transaction_id;
public $ebl_request;
public $ebl_response;
public $created_at;
public $updated_at;
//Multilang Fields
public $name;
public $description;
public $meta_description;
public $link_rewrite;
/**
* @see ObjectModel::$definition
*/
public static $definition = array(
'table' => 'ebl_payments',
'primary' => 'id',
'multilang' => false,
'fields' => array(
//Fields
'cart_id' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt'),
'order_id' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt'),
'ebl_order_id' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt'),
'ebl_status' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt'),
'ebl_result' => array('type' => self::TYPE_INT),
'ebl_result_code' => array('type' => self::TYPE_STRING),
'ebl_card_number' => array('type' => self::TYPE_STRING),
'ebl_transaction_id' => array('type' => self::TYPE_STRING),
'ebl_request' => array('type' => self::TYPE_STRING),
'ebl_response' => array('type' => self::TYPE_STRING),
'created_at' => array('type' => self::TYPE_STRING),
'updated_at' => array('type' => self::TYPE_STRING),
//Multilanguage Fields
'name' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isGenericName', 'required' => true, 'size' => 250),
'description' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isCleanHtml', 'size' => 250),
'meta_description' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isCleanHtml', 'size' => 250),
'link_rewrite' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isLinkRewrite', 'required' => true, 'size' => 250),
)
);
class AdminEblpaymentController extends ModuleAdminController
{
public function __construct()
{
$this->className = 'EblPaymentModel';
$this->table = 'ebl_payments';
$this->identifier = "id";
$this->_defaultOrderBy = 'created_at';
$this->_defaultOrderWay = 'desc';
$this->orderBy = "created_at";
$this->orderWay = "desc";
$this->meta_title = $this->l('EBL payment attempts');
$this->deleted = false;
//$this->explicitSelect = true;
$this->list_no_link = true;
$this->context = Context::getContext();
//$this->lang = true;
$this->bootstrap = true;
$this->sortedTree = array();
if (Shop::isFeatureActive()) {
Shop::addTableAssociation($this->table, array('type' => 'shop'));
}
$this->addRowAction('edit');
$this->addRowAction('details');
$this->addRowAction('updatestatus');
$this->addRowAction('cart');
$this->fields_list = array(
'id' => array(
'title' => $this->l('ID'),
'type' => 'int',
'align' => 'center',
'width' => 25,
),
'cart_id' => array(
'title' => $this->l('Cart id'),
'width' => 'auto',
'orderby' => false
),
'order_id' => array(
'title' => $this->l('Order id'),
'width' => 'auto',
'orderby' => false
),
'status' => array(
'title' => $this->l('Status'),
'width' => 'auto',
'orderby' => false
),
'result' => array(
'title' => $this->l('Result'),
'width' => 70,
'align' => 'center',
'orderby' => false
),
'result_code' => array(
'title' => $this->l('Result code'),
'width' => 70,
'align' => 'center',
'orderby' => false
),
'dbbl_transaction_id' => array(
'title' => $this->l('Transaction id'),
'width' => 70,
'align' => 'center',
'orderby' => false
),
'dbbl_response' => array(
'title' => $this->l('Response'),
'width' => 70,
'align' => 'center',
'orderby' => false
),
'created_at' => array(
'title' => $this->l('Created at'),
'width' => 70,
'align' => 'center',
'orderby' => true
),
'updated_at' => array(
'title' => $this->l('Updated at'),
'width' => 70,
'align' => 'center',
'orderby' => true
)
);
parent::__construct();
}
}
私のモデルは/ EblpaymentModel.phpファイルには、次のコードが含まれています
マイコントローラー/管理/ AdminEblpayment.phpファイルには、次のコードが含まれています
BOの "Eblpayment"タブには以下のリストがありますが、編集、更新、削除はできません。私は、[編集]リンクをクリックすると
は、私が得た - エラー「EblPaymentModelモデルが見つかりません」:誰かが私に「管理タブ」で管理モジュールを開発するためのいくつかのよく文書化されたリソースのリンクを与えてください」編集、更新、削除アクションを含むリストを記録します。
ありがとうございます。
ありがとうございます。レコードごとに更新アクションを追加するにはどうすればよいですか? –
@JahangirAlam私は答えを更新しました。 – TheDrot