下面的代码在桌面浏览器(Safari和Firefox)上运行良好,但菜单按钮不适用于Mobile Safari(当我点击没有任何反应时,我希望菜单显示).
我有一个旧的模拟器(iOS 5)但基金会的示例代码在同一个移动浏览器的页面上工作,所以我不确定我做错了什么.例如,此链接中的高级部分在同一移动浏览器上运行良好:http://foundation.zurb.com/docs/components/offcanvas.html,我的代码几乎是他们的副本.
JS Fiddle链接:http://jsfiddle.net/rGyKv/
更新:将标题更改为非画布而不是Topbar.
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<meta content="width=device-width" name="viewport">
<link href="/static/css/foundation.min.css" rel="stylesheet">
<script src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script src="http://localhost:8080/static/js/foundation.min.js"></script>
<meta class="foundation-data-attribute-namespace">
<meta class="foundation-mq-xxlarge">
<meta class="foundation-mq-xlarge">
<meta class="foundation-mq-large">
<meta class="foundation-mq-medium">
<meta class="foundation-mq-small">
<script> $(document).ready(function() {$(document).foundation();});</script>
<meta class="foundation-mq-topbar">
</head>
<body>
<div class="row">
<div class="small-12 columns end">
<div class="off-canvas-wrap docs-wrap">
<div class="inner-wrap">
<nav class="tab-bar">
<section class="left-small">
<a class="left-off-canvas-toggle menu-icon">
<span> </span> </a>
</section>
<section class="middle tab-bar-section">
<h1 class="title">Title</h1>
</section>
</nav>
<aside …Run Code Online (Sandbox Code Playgroud) 我正在按照本教程http://www.parsonsmatt.org/programming/2015/06/07/servant-persistent.html通过servant创建API.我想自定义服务器以提供静态文件,但无法找到方法.
我正在使用stack构建工具.
我将Main.hs文件的运行修改为include static(run port $ static $ logger $ app cfg)并导入Network.Wai.Middleware.Static (static).我还添加wai-middleware-static >=0.7.0 && < 0.71到我的cabal文件中.
当我运行(更新:这部分完全是我的错误,我添加了封装到错误的小集团文件..跛脚导入Network.Wai.Middleware.Static作品和静态文件留在以下情况下,错误.任何人都搜索它并发现它很有用.)stack build我得到:
Could not find module ‘Network.Wai.Middleware.Static’
Perhaps you meant
Network.Wai.Middleware.Gzip (from wai-extra-3.0.7.1@waiex_GpotceEdscHD6hq9p0wPOJ)
Network.Wai.Middleware.Jsonp (from wai-extra-3.0.7.1@waiex_GpotceEdscHD6hq9p0wPOJ)
Network.Wai.Middleware.Local (from wai-extra-3.0.7.1@waiex_GpotceEdscHD6hq9p0wPOJ)
Run Code Online (Sandbox Code Playgroud)
接下来我尝试使用servant serveDirectory如下(简化):
type API = "users" :> Get '[JSON] [Person]
:<|> "static" :> Raw
server = createPerson :<|> serveDirectory "/static"
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Couldn't match type ‘IO’ …Run Code Online (Sandbox Code Playgroud) 我试图将一些ByteString回传给客户端(浏览器).客户端将不知道所请求文档的内容类型,因此我尝试将适当的内容类型响应发送回客户端.该文件可以是图像或pdf或word文档等.
例如,客户端将请求/document?id=55并且服务器将使用适当的内容类型和关联的内容进行响应ByteString.
我按照这里的例子:我为图像创建了一些东西.
data IMAGE
instance Accept IMAGE where
contentType _ = "image" M.// "jpeg"
instance MimeRender IMAGE LBS.ByteString where
mimeRender _ = id
Run Code Online (Sandbox Code Playgroud)
挑战是客户端不会发送带有某些特定Accept:标头的请求,因此我无法像在此处所做的那样对适当的Mime类型做出反应.加上上面将只图像工作(假设浏览器将推断png,即使我发回jpeg),但不适合pdf,docx等.
我想过一个类似于paramaterized的类型MyDynamicContent String,我会在运行时传入内容类型,但我不确定如何声明我的API,即我将使用什么代替'[JSON].不确定这样的事情是否可能,因为示例只是一个简单的数据类型.
所以我的问题是,如果我想发送一些ByteString作为响应并Content-Type动态设置标题,那么使用它的最佳方法是什么servant
更新:我已经开了一个问题
我有每日库存数据作为使用PyTables创建的HDF5文件.我想获得一组行,将其作为一个数组处理,然后使用PyTables将其写回磁盘(更新行).我无法想办法干净利落地做到这一点.能不能让我知道最好的方法是什么?
我的数据:
Symbol, date, price, var1, var2
abcd, 1, 2.5, 12, 12.5
abcd, 2, 2.6, 11, 10.2
abcd, 3, 2.45, 11, 10.3
defg, 1,12.34, 19.1, 18.1
defg, 2, 11.90, 19.5, 18.2
defg, 3, 11.75, 21, 20.9
defg, 4, 11.74, 22.2, 21.4
Run Code Online (Sandbox Code Playgroud)
我想将与每个符号对应的行作为数组读取,进行一些处理并更新字段var1和var2.我事先知道所有的符号,所以我可以循环它们.我试过这样的事情:
rows_array = [row.fetch_all_fields() for row in table.where('Symbol == "abcd"')]
Run Code Online (Sandbox Code Playgroud)
我想将rows_array传递给另一个函数,该函数将计算var1和var2的值并为每条记录更新它.请注意,var1,var2与移动平均值类似,因此我无法在迭代器中计算它们,因此需要将整个行集合作为数组.
在使用rows_array计算我需要的任何内容后,我不确定如何将其写回数据,即使用新的计算值更新行.更新整个表时,我使用:
table.cols.var1[:] = calc_something(rows_array)
Run Code Online (Sandbox Code Playgroud)
但是,当我只想更新表的一部分时,我不是最好的方法.我想我可以重新运行'where'条件,然后根据我的计算更新每一行,但这似乎是浪费时间重新扫描表.
您的建议值得赞赏......
谢谢,-e
我试图从我的数据框中删除一些列,并且不希望返回修改后的数据框并将其重新分配给旧的.相反,我希望该功能只是修改数据框.这就是我尝试的但它似乎没有做我除外.我的印象参数是作为参考传递而不是价值?
function remove_cols! (df::DataFrame, cols)
df = df[setdiff(names(df), cols)];
end
df = DataFrame(x = [1:10], y = [11:20]);
remove_cols!(df, [:y]); # this does not modify the original data frame
Run Code Online (Sandbox Code Playgroud)
当然下面的工作,但我更愿意,如果remove_cols!只是改变了df到位
df = remove_cols!(df, [:y]);
Run Code Online (Sandbox Code Playgroud)
如何在我的功能中更改df?
谢谢!
在我的模板中,我想包含一些默认meta标签(90%的时间).但是,当设置特定属性时,我想显示一组不同的文本.
我知道我可以设置一个匿名struct和设置属性有两种"default"或"some-x".但是,这意味着,我需要向目前通过的90%的处理程序添加一个匿名结构nil.
有没有办法做类似的事情
{{if eq . nil}}
// default meta tag
{{else if eq .MetaValue "some-x"}}
//other
{{end}}
Run Code Online (Sandbox Code Playgroud)
如果我尝试上面的代码,它会编译,但不会做我想要的.感谢任何有关如何正确处理它的建议,而无需添加大量锅炉板.
谢谢!
我正在解析一个XML文件,HXT我试图将一些节点提取分解为模块化部分(我一直在使用它作为我的指南).不幸的是,一旦我进行了第一级解析,我无法弄清楚如何应用一些选择器.
import Text.XML.HXT.Core
let node tag = multi (hasName tag)
xml <- readFile "test.xml"
let doc = readString [withValidate yes, withParseHTML no, withWarnings no] xml
books <- runX $ doc >>> node "book"
Run Code Online (Sandbox Code Playgroud)
我看到书有类型 [XmlTree]
:t books
books :: [XmlTree]
Run Code Online (Sandbox Code Playgroud)
现在我想得到第一个元素,books然后在子树中提取一些值.
let b = head(books)
runX $ b >>> node "cost"
Couldn't match type ‘Data.Tree.NTree.TypeDefs.NTree’
with ‘IOSLA (XIOState ()) XmlTree’
Expected type: IOSLA (XIOState ()) XmlTree XNode
Actual type: XmlTree
In the first argument …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建大量的图(简单的xy条形图),我想以网格的形式显示.当我使用gridExtra包的grid.arrange时,随着绘图数量的增加,每个单独的绘图都会缩小.有没有办法创建绘图画布,使其跨越多个页面而不缩小每个单独的绘图?
gridExtra的一个简单示例:
require(ggplot2)
require(gridExtra)
plots = lapply(1:50, function(.x) qplot(1:10,rnorm(10),main=paste("plot",.x)))
do.call(grid.arrange, plots)
Run Code Online (Sandbox Code Playgroud)
上面的代码生成了50个图,但它们缩小了以适应画布.有没有办法避免这种情况?即,让它们跨越多个页面,每个页面将有约9个左右的情节?我对PNG或PDF文件格式没问题.
在尝试grid.arrange之前,我使用了来自此站点的代码示例:http://gettinggeneticsdone.blogspot.com/2010/03/arrange-multiple-ggplot2-plots-in-same.html 并遇到了同样的问题.
我还没有尝试将不同的数据帧组合成一个带有绘图标识符的巨型数据帧.然后我正在考虑使用情节标识符进行分区,但我不确定它是否也会出现缩小每个情节的相同问题.
希望我的问题很明确......
谢谢,-e
我是Haskell的新手,你也可以向Yesod推测它.我想用两种方法来学习更多关于Haskell和Web开发的方法.
我有两个问题,由于我缺乏Haskell知识,它们都可能是我犯的愚蠢错误:
(1)我用sqlite创建了一个脚手架网站(我使用的是Yesod 1.2).我尝试在生成的homepage.hamlet文件中只添加一行,它给了我一个错误(顺便说一句,没有这个添加,网站工作正常).我添加的行是:
<a href=@{AuthR LoginR}>Go to the login page
Run Code Online (Sandbox Code Playgroud)
之后我收到此错误消息:
Handler/Home.hs:34:11:
Not in scope: data constructor `LoginR'
In the result of the splice:
$(widgetFile "homepage")
To see what the splice expanded to, use -ddump-splices
In a stmt of a 'do' block: $(widgetFile "homepage")
In the second argument of `($)', namely
`do { aDomId <- newIdent;
setTitle "Welcome To Yesod!";
$(widgetFile "homepage") }'
Run Code Online (Sandbox Code Playgroud)
有没有办法在其他处理程序/模板中公开LoginR?
(2)我最终想要自定义登录页面的外观和感觉,所以我试着按照这里的说明(也认为这可能解决了上述问题,因为我在范围内声明了我自己的Handler):http://hackological.com/ blog/using-twitter-to-authenticate-in-yesod /.基本上我修改了Foundation.hs的authRoute语句,如下所示
authRoute _ = Just LoginPanelR
Run Code Online (Sandbox Code Playgroud)
然后添加路线:
/login LoginPanelR …Run Code Online (Sandbox Code Playgroud) 我承认,鉴于我有限的Haskell知识,我并不太了解Conduits.所以,如果有人可以指导我如何完成这项任务,那就表示赞赏:我想获取rawQuery动作的输出并将其存储在一个变量中,然后我可以在我的Hamlet文件中再次使用它.例如:
let sql = "SELECT sum(value) as total, category FROM person GROUP BY category ORDER BY total desc;"
--- ?? how to store this runDB output in a variable?
runDB $ rawQuery sql [] $$ CL.map (convertFromPersistent)
where
convertFromPersistent [] = Nothing
convertFromPersistent [PersistInt64 sum,PersistInt64 category] = Just (sum,category)
convertFromPersistent _ = Nothing
Run Code Online (Sandbox Code Playgroud)
当我做
runDB $ rawQuery sql [] $$ CL.mapM_ (liftIO. print. convertFromPersistent)
Run Code Online (Sandbox Code Playgroud)
我在日志文件中看到了输出.但是,我想将输出传递给元组数组,以便我可以在我的Hamlet文件中使用它.感谢您的帮助!
谢谢,