1. 程式人生 > >MAGENTO 後臺模組開發六

MAGENTO 後臺模組開發六

在這一章節裡,我們將學習如何將 Grid 表正確的新增至後臺表單選項卡所對應的 content 區塊裡

這一章節只針對於對 Magento 有深刻了解的開發者,並已成功在後臺選項卡所對應的 Content 區塊裡新增過 Grid 表,及有能力解決所碰到的問題

gridtab

為了更好的講解,我們來拿一個客戶的需求當作例項,需求方案如下,建立一個實體叫’Customer Manager’, 隨之分配一批客戶給這個’Customer Manager’來管理,在後臺頁面,我們需要能夠從整個客戶表裡選擇客戶,然後儲存或者關係到某一個指定的 Customer Manager。所以在’Customer Manager’編輯頁面中要顯示出一個完整的客戶 Grid 表, 這個表裡會有 checkbox 列可以多選客戶,這個類似於在後臺編輯商品頁面裡的 Related Products 和 Cross-sell Products

預設或者簡單的操作方法是: 在 Tabs.php 檔案裡建立一個後臺視窗,這裡有個 addTab() 方法來定義我們想要新增的視窗路徑(指: block 檔案路徑),程式碼如下:

1234567$this->addTab('form_section',array('label'=>Mage::helper('test')->__('Sample Grid'),'title'=>Mage::helper('test')->__('Sample Grid'),'content'=>$this->getLayout()->createBlock
('fav/adminhtml_fav_edit_tab_grid')->toHtml(),));

這樣一個 Grid 表會顯示在新增選項卡(Tab)所對應的 Content 區塊裡, 但是在執行的時候會有許多問題產生。比如在搜尋或分頁的時候,和新增/刪除條目有關操作的時候

正確的操作方法

在 Tabs.php 中的 addTab() 方法應該如下:

1 2 3 4 5 6 $this->addTab('form_section1',array( 'label'=>Mage::helper('test'
)->__('Customers'), 'title'=>Mage::helper('test')->__('Customers'), 'url'=>$this->getUrl('*/*/customer',array('_current'=>true)), 'class'=>'ajax', ));

這樣做的話,當你點選 Customers Tab, 它就會以 ajax 方式呼叫 url 載入,然後顯示出 Grid 表

在我們的 controller 檔案中, 新增 custoemrAction() 方法,程式碼如下:

123456789publicfunctioncustomerAction(){$this->loadLayout();$this->getLayout()->getBlock('customer.grid')->setCustomers($this->getRequest()->getPost('customers',null));$this->renderLayout();}

這個操作十分簡單, 只是簡單的載入和輸出 Layout, 所以還有段重要的程式碼應該寫在該模組的 XML 檔案裡(在 Layout 資料夾下), 如下:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

相關推薦

MAGENTO 後臺模組開發

在這一章節裡,我們將學習如何將 Grid 表正確的新增至後臺表單選項卡所對應的 content 區塊裡 這一章節只針對於對 Magento 有深刻了解的開發者,並已成功在後臺選項卡所對應的 Content 區塊裡新增過 Grid 表,及有能力解決所碰到的問題

MAGENTO 後臺模組開發

在這一章節,我們將會看到關於 Grid 更為複雜一點的操作,接下去所講的都是前一章節的延續 修改 Grid 表中行的 URL 如果你想要詳細定義 Grid 表中行的 URL, 比如,當用戶點選 Grid 表中的任意一行,它將跳轉到指定的頁面,可以新增如下方

遊戲後臺管理模組開發流水賬

最近沒什麼事就被老大抓壯丁去做了一個遊戲後臺管理系統,包括前端和後端。 前端採用Vue+Webpack+Vue-resource+element-ui後端採用Nodejs+express+mysql+redis 初生牛犢不怕虎,看了一點文件,俺上來就手擼Vue,

magento網站建設,magento模板開發magento支付模組

又碰到郵件問題,在magento前臺註冊新使用者,下訂單都沒有收到郵件。但是提示都是說正常。 直接在ssh中使用下列命令測試,連線超時: echo "Subject: test" | /usr/lib/sendmail -v xinhaozheng(at)gmail.co

電商專案(二十)使用者模組開發(登出、註冊、校驗功能開發

一、門戶登出功能 1、門戶登出功能介面設計(退出登陸) request: 無 response: success { "status": 0, } fail { "statu

網頁設計、web前端、後臺開發流程和註意事項 -----轉

開發人員 命名 彈出層 設計效果圖 元素 文檔 這一 dem sof 工作2年了,總感覺每次做項目的時候,都是趕時間,趕時間,加班幾班,可是最後總結一看,百分之50的時間都浪費在做無用功上面了,甚至因為設計人員的失誤,造成了前端和程序大量的返工,休整,加班,造成了開發人員

前端到後臺ThinkPHP開發整站(3)

reac add ets data struct -a tle min ons   繼續我的這個項目的第三晚的開發了,時間比較少,今晚寫的代碼不多,今晚仍然是造輪子寫一個公共的控制器和一個公共的JS。直接上代碼吧!   以下是一個公共的控制器,後臺控制器都繼承於它,構造函數

前端到後臺ThinkPHP開發整站(5)

進度 get git avs 技術分享 rto md5加密 -c exit   今天周五了,這個項目做了五個晚上了,明天周末不用上班有一整天的時間來結束這個項目了,今晚主要把後臺界面給弄出來了。   大概的整個後臺界面就是這個樣子了,接下來的工作就是搬磚了,一個個菜單功能填

共享鏈後臺系統開發

水果 richtext 企業版 通過 ctu font 系統 公司 itemid 共享鏈軟件系統開發公司 共享鏈軟件系統開發公司【陳鑫 180-2406-2897(電 / 微)】共享鏈軟件系統開發公司 互聯網+時代的到來,讓越來越多的人去做積極的融入互聯網,而阻礙商

magento後臺不能登陸

agen coo gen 嘗試 登陸 解決 pda 登陸鏈接 1.7 本人magento 1.7.2 在修改後臺登陸鏈接可以登陸 而後用mysql update在admin_user 修改登陸密碼後不能登陸 嘗試用刪除var/session 修改app/...

GO開發[]:golang反射(reflect)

回調 set var tin 一個 相關信息 運行 odi 設置 反射 反射:可以在運行時動態獲取變量的相關信息 ? Import (“reflect”) reflect.TypeOf,獲取變量的類型,返回reflect.Type類型 reflect.ValueOf,獲取變

React-Native開發 react-navigation之StackNavigator簡介

1 前言 react-navigation是RN開發中一款開源的導航元件,它的功能包括StackNavigator,TabNavigator,DrawerNavigator。react-navigation的出現替代了Navigator、 Ex-Navigation等老一代的導航元件

25、【支付模組開發】——將配置好的支付寶沙箱環境整合到我們的專案中以及支付介面的編寫

####1、將支付寶Demo中的相關檔案複製到我們的專案中: 首先,我們將Demo中src中的包及裡面的檔案複製到我們專案中 同樣,我們也要講zhifubao.properties這個配置檔案方法我們專案中的 resources目錄下: 加下來就是我們的jar包了~ 首先我們先在

24、【支付模組開發】——將下載下來的支付寶API Demo執行在web上

上一篇23、【支付模組快發】——Java對接支付寶步驟(沙箱環境)我們講解了怎麼配置相關配置檔案,下面我們除錯一下怎麼使其在IDEA的web專案中跑起來,然後在瀏覽器中進行操作 我們用IDEA匯入支付寶對接Demo的是時候發現不能執行,下面講解一下怎麼在IDEA中執行支付寶Demo並且在

23、【支付模組開發】——Java對接支付寶步驟(沙箱環境)

####1、下載匯入專案 https://docs.open.alipay.com/54/104506 開啟支付寶介面官網: 我們下載Java版Demo 下載之後解壓,然後我們用IDEA匯入這個Demo專案~ 然後,我們下載一個我們後面需要生成生成RSA金鑰的工具:https://d

26、【支付模組開發】——支付寶回撥函式實現和查詢使用者訂單狀態介面編寫

####1、支付寶回撥函式實現 我們在除錯支付寶沙箱環境的時候,支護寶會有一個回撥函式,也就是在支付成功之後,可以呼叫我們支付之後需要執行的相關方法,從而達到資料庫的資料和我們的操作相統一。 首先我們先在本地將回調函式編寫好~ 在OrderController類中新建我們的支付寶回撥函式

模組開發之nginx配置websocet支援多環境配置(十五)

模組開發之nginx配置websocet支援多環境配置(十五) 文章目錄 前言 配置webpack的多環境配置 配置專案 生產環境`webpack.dev.config.js` 開發環境`webpack.prod.config

織夢後臺模組管理空白不顯示的解決方法

那是因為模組管理是優先從織夢官方獲取模組列表,當官方伺服器出問題那就空白。 我們可以改成從自己本地讀取 開啟 dede/module_main.php 找到 $modules_remote = $dm->GetModuleUrlList($moduletype,$mdurl); 刪除,繼續找

Maven + Gogs + Nexus 實現版本管理 + 程式碼模組開發管理

Gogs:能夠實現fork + 程式碼提交 + 程式碼框架 Nexus:進行jar包的版本管理,私服下載jar包共享jar包 Maven:在客戶端進行模組管理和批量操作 1. 本地maven倉庫配置配置settings.xml私服地址 settings.xml <project> &

ESP32無線模組開發

最近在做一款低功耗裝置,SoC選用上海樂鑫科技的一款ESP32 wifi模組。樂鑫官網。 ESP32簡介 ESP32是集成了2.4GHz WiFi和藍芽雙模組的單晶片方案,專為移動裝置、可穿戴裝置和物聯網應用而設計。在功能簡單的使用環境下具有很好的實用性,且操作簡單,ESP32