手機商城筆記3--實現後台第一個頁面

來源:互聯網
上載者:User

標籤:

接下來我們來製作後台,因為後台也有login登陸之類的頁面,為了和前台區分開,我們都添加一個首碼back好了。

  1. 我們建立後台管理員的控制器,添加login動作

  1. 建立對應的視圖檔案夾並把後台純淨模板的login頁面代碼放入

添加路由:

  1. 建立後台css和img目錄並把後台使用的樣式和圖片放入,如

  1. 設定後台引用樣式檔案和圖片的路徑常量11行和12行

  1. 用路徑常量替換掉背景login頁面對樣式和圖片的引用地址

第9行的href原來為

替換後為:

?

然後圖片引用用Ctrl+R來實現全部替換:

?

(6)結果,那麼我們就要讓該頁面不去使用布局檔案:

  1. 考慮到後台應該有自己的布局,而不是和前台使用同一個布局,那麼設定背景頁面完整步驟如下,如下:

第一步,建立一個使用admin_application布局的基類,如下第二行代碼設定了要渲染的布局,這樣就不會去使用application.html.erb這個前台使用的布局檔案了。我們為了區分開,建立了一個admin目錄,把這個基類放入該目錄

  1. 修改後台backmanager_controller.rb檔案,讓它去繼承我們建立的基類,注意繼承時Admin::這個不能少不然報錯,這樣就能實現渲染的布局只是admin_application。而且不繼承這個類的話就不會去渲染admin_application布局,這樣能讓前台不會因為添加了一個新的布局而發生改變,因為前台不會去使用這個布局。

(8)我們還沒有admin_application這個布局檔案,所以我們去建立這個布局檔案如下,就是把最原始的application布局檔案代碼複製過來就行,如。甚至我們只要留下<%= yield %>這行代碼就可以了,因為我們使用的純淨頁面都包含了那些<html>、<head>必要的標籤,如下

(9)沒有使用前台的布局,而是使用後台自己的布局檔案admin_application.html.erb之後,效果如下

?

如上頁面顯示應該是缺少一些圖片而且Console又沒報錯,但是我們根據我們在製作前台的經驗中也知道可能是樣式檔案中有引入一些圖片但是路徑我們還沒修改,我們根據前台頁面的經驗(就是審查元素查看瀏覽器解析路徑然後就知道怎麼改了)把../img全部替換成../../img如下就是替換後的,因為登陸頁面只使用了User_Login.css這個樣式檔案,所以修改這個就正確了,但是我們還是把全部樣式檔案中的圖片引用路徑全部按照這個改了,防止後面忘記修改了(不過不用改了,因為另外兩個樣式檔案中沒有引用圖片)

?

修改後效果如下:

?

實現背景首頁

後台架構使用frameset標籤實現品字形布局

  1. 定義控制器

  1. 添加路由

  1. 建立與控制器對應的視圖檔案夾,並建立4個頁面模板,把純淨頁面代碼複製到這4個頁面中去,然後替換樣式目錄為後台樣式的目錄常量,然後在全部替換圖片目錄為後台樣式的目錄常量,這些步驟跟前面全部一樣。

目錄結構如下,以head.html.erb為例代碼如下:

訪問頭部頁面效果為(在引用了樣式還沒引入圖片時就只有幾張無法顯示的圖片,看起來幾乎都沒有,不過沒錯,因為頭部其實就是幾張圖片組成的而已)

  1. 按照同樣方式去修改另外left和right頁面,結果如:

  1. index頁面的修改跟前幾個頁面不一樣,就是修改對前3個頁面的引用的路勁而已也很簡單

原來的index頁面代碼:

修改對3個頁面的引用路徑,這個很簡單但是不能寫錯,就是/控制器/頁面名,記住頁面名不要使用尾碼html.erb不然頁面會是空白,結果代碼如下:

  1. 如上頁面引用沒有使用尾碼,格式也是正確,還是空白,這是因為布局的原因

因為後台頁面都使用admin_application.html.erb這個布局檔案,我們知道每個子頁面都有html的聲明,引用的布局也有html5的聲明,因為子頁面是替換<%= yield %>,所以合并後的頁面是html5的聲明<!DOCTYPE html>…然後才是子頁面html的聲明,因為html5的聲明在開頭所以預設頁面是html5的形式而不是老版本的html的形式。前面做的頁面都沒錯是因為相容,而html5不能使用frameset了,所以導致index頁面空白

修改方法就是刪除布局中和子頁面html聲明部分作用相同的代碼即可,修改後如下:

  1. 注意:前面我們因為使用共同的頁頭頁尾,所以老版本形式的html聲明替換掉了布局檔案中的html5聲明,頁面不會亂。以後要是使用老版本的html頁面聲明的話,那麼最好都把布局檔案中的html5聲明刪除掉,不然代碼沒錯,但是頁面看起來有可能不協調。

?

這樣一來,背景大體架構已經完成了,其他頁面和功能後面慢慢完善就行。

手機商城筆記3--實現後台第一個頁面

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.