小编Mar*_*tix的帖子

如何在Elixir模块中定义常量?

在Ruby中,如果一个人在类中定义常量,他们将使用全部大写来定义它们.例如:

class MyClass
  MY_FAVORITE_NUMBER = 13
end
Run Code Online (Sandbox Code Playgroud)

你是怎么做到Elixir的?如果不存在这样的等价物,你如何解决Elixir中的魔法数字问题?

elixir

37
推荐指数
5
解决办法
1万
查看次数

如何从Http.Error中获取错误消息?

我正在尝试在HTTPElm 0.17教程中完成练习.如果获取gif失败,我想让用户知道失败的原因并显示错误消息.

我修改了我的模型:

type alias Model =
  { topic : String
  , gifUrl : String
  , errorMessage : String
  }
Run Code Online (Sandbox Code Playgroud)

并且更新中的提取失败为:

FetchFail error ->
  (Model model.topic model.gifUrl (errorMessage error), Cmd.none)
Run Code Online (Sandbox Code Playgroud)

功能errorMessage如下:

errorMessage : Http.Error -> String
errorMessage error =
  case error of
    Http.Timeout ->
      "Timeout"
    Http.NetworkError  ->
      "Network Error"
    Http.UnexpectedPayload _ ->
      "UnexpectedPayload"
    Http.BadResponse _ _ ->
      "BadResponse"
Run Code Online (Sandbox Code Playgroud)

以上功能对我来说似乎是不必要的锅炉.有没有办法可以直接转换Http.Error成字符串?

elm

14
推荐指数
1
解决办法
2977
查看次数

14
推荐指数
2
解决办法
1866
查看次数

什么相当于凤凰城的佣金路线?

Ruby on Rails附带了terminal命令rake routes.凤凰城有同等的地方吗?

phoenix-framework

7
推荐指数
1
解决办法
762
查看次数

如何在榆树视图中混合使用html和svg?

我正在尝试添加一个控件来在elm time示例中打开和关闭订阅.问题是我无法让html和svg在视图中共存.

到目前为止,我有这个观点:

import Html exposing (Html)
import Html.App as Html
import Html.Attributes exposing (..)
import Html.Events exposing (..)
import Svg exposing (..)
import Svg.Attributes exposing (..)
import Time exposing (Time, second)

-- MODEL, UPDATE and SUBSCRIPTION removed for brevity

-- VIEW


view : Model -> Html Msg
view model =
  Html.div []
    [ Html.p [] [ text "hello world" ]
    , clock
    ]

clock : Model -> Html msg
clock model =
  let
    angle =
      turns (Time.inMinutes …
Run Code Online (Sandbox Code Playgroud)

elm

5
推荐指数
1
解决办法
2147
查看次数

如何将 MongoDB 中的文档反序列化为 Rust 结构?

这是我迄今为止的尝试。我不明白如何告诉 Rust 将 MongoDB 结果反序列化为结构。

我已经定义了一个名为的结构Thing,我希望将数据映射到该结构。

#[macro_use(bson, doc)]
extern crate bson;
extern crate mongodb;
#[macro_use]
extern crate serde_derive;

use mongodb::db::ThreadedDatabase;
use mongodb::{Client, ThreadedClient};

fn main() {
    let client =
        Client::connect("localhost", 27017).expect("Failed to initialize standalone client.");

    let coll = client.db("bestestDB").collection("things");

    let doc = doc! {
        "$text": { "$search": "Love" },
    };

    #[derive(Serialize, Deserialize, Debug)]
    pub struct Thing {
        #[serde(rename = "_id")] // Use MongoDB's special primary key field name when serializing
        pub id: String,
        pub name: String,
        pub image: …
Run Code Online (Sandbox Code Playgroud)

mongodb rust serde

5
推荐指数
0
解决办法
1105
查看次数

如何获取传递给块的参数的名称?

在Ruby中,您可以这样做:

prc = lambda{|x, y=42, *other|}
prc.parameters  #=> [[:req, :x], [:opt, :y], [:rest, :other]]
Run Code Online (Sandbox Code Playgroud)

尤其是,我很感兴趣,能够得到它们的参数的名称x,并y在上面的例子.

在Crystal中,我有以下情况:

def my_method(&block)
  # I would like the name of the arguments of the block here
end
Run Code Online (Sandbox Code Playgroud)

如何在Crystal中做到这一点?

crystal-lang

4
推荐指数
2
解决办法
86
查看次数

标签 统计

elm ×2

.net-core ×1

crystal-lang ×1

elixir ×1

f# ×1

mongodb ×1

mono ×1

phoenix-framework ×1

rust ×1

serde ×1