Haskell之Yesod開發 邊踩坑邊開發 2

2021-09-07 05:47:18 字數 1181 閱讀 2102

今天繼續上一節的開發

今天我們須要詳細的開發乙個圖書館站點,分為下面幾個頁面

首先我們簡單完畢homerlibraryr的頁面(詳細**省略,大家自己完畢)。

假設要做乙個站點,必要的是不可或缺的。我們想在libraryr中放置乙個logo圖示。因此我們須要像通常的web開發框架那樣。在乙個詳細資料夾下存放logo.jpg,然後在頁面上引用。

引用**很easy

src=@>

這裡須要注意的是,yesod會將資料夾結構和.分隔符用_來替代

接下來在src的同級建立乙個static資料夾,並copylogo.jpg到當中

然後我們在routes結構中新增對於static的宣告/static staticr static getstatic,當中的getstatic是說明從何處訪問static檔案

我們須要全域性宣告static的資料夾,在全域性範圍上新增$(staticfiles "static")

main = do

s@(static settings)

"static"

這樣就能夠讀入static資料夾和當中的檔案了

我們已經宣告了userr路由。這個路由帶有乙個使用者id

gethomer :: handler html

gethomer = do

...let userid = -1 :: integer

...

在頁面上我們希望通過該id的不同值來渲染節點

$if (userid ==

-1)

$else

href=@ #userc∑lick>使用者設定

這樣通過使用$if $else標籤,我們就差別了使用者存在和不存在的狀態

利用Geany打造Haskell開發環境

haskell作為一門函式式程式語言還是很有趣的,但是haskell這麼多年並沒有火起來,也是太難了,以至於到現在都沒有自己的ide。但是沒有關係,我們可以用geany搭建乙個比較不錯的haskell開發環境。話不多說,咱們刷卡上車。本文 現的geany截圖可能和大家的長得不一樣,別問我為什麼我的g...

ITK開發之UserService開發

使用userservice機制來指定要在teamcenter工程中註冊的功能。這些功能由teamcenter工程客戶端動態呼叫。在tc使用過程中呼叫使用者自定義的操作,這樣做對於tc的擴充套件是非常方便的,比如常用的開旁路功能。在這裡使用userservice開發乙個建立item物件的例子,開發us...

web開發之介面開發流程

web開發很多專案有不同的開發流程,有些專案直接由程式設計師將前端 後台全部包攬開發製作完成。而乙個高質量的web開發專案,應該由需求人員 產品人員 ue設計人員 視覺人員 美工人員 ui製作人員 前端工程師 程式設計師等人員的參與,共同合作完成。下面講一下我公司的開發流程。1.首先由需求人員 產品...