Lucky 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Lucky 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
授权协议: MIT
开发语言: HTML/CSS 查看源码 »
操作系统: 跨平台
收录时间: 2019-08-21
提 交 者: threeC

Lucky 是一个用 Crystal 写的 Web 框架,它可以帮助你在编译时捕获 bug,并提供快速的响应,使编写 Web 应用程序快速、有趣和容易。

Lucky 使用 Action 类来处理 HTTP 请求和响应,类将它处理的路由和参数映射到响应块。

特性:

  • 速度快和使用很少的内存
  • 在创建一个新的 Lucky 项目时,可以包括身份验证、资产管理、CORS、数据库 ORM等等
  • 与在 QA 或生产中发现 bug 不同,Lucky 的设计目的是在编译时捕获尽可能多的 bug 

JSON API

class Api::Users::Show < ApiAction
  get "/api/users/:user_id" do
    json user_json
  end

  private def user_json
    user = UserQuery.find(user_id)
    {name: user.name, email: user.email}
  end
end

Database

# Set up the model
class User < BaseModel
  table :users do
    column last_active_at : Time
    column last_name : String
  end
end

# Add some methods to help query the database
class UserQuery < User::BaseQuery
  def recently_active
    last_active_at.gt(1.week.ago)
  end

  def sorted_by_last_name
    last_name.lower.desc_order
  end
end

# Query the database
UserQuery.new.recently_active.sorted_by_last_name

Rendering HTML:

class Users::Index < BrowserAction
  route do
    users = UserQuery.new.sorted_by_last_name
    render IndexPage, users: users
  end
end

class Users::IndexPage < MainLayout
  needs users : UserQuery

  def content
    render_new_user_button
    render_user_list
  end

  private def render_new_user_button
    link "New User", to: Users::New
  end

  private def render_user_list
    ul class: "user-list" do
      @users.each do |user|
        li do
          link user.name, to: Users::Show.with(user.id)
          text " - "
          text user.nickname || "No Nickname"
        end
      end
    end
  end
end

 

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

Lucky 的相关资讯

还没有任何资讯

Lucky 的相关博客

CF1096G Lucky Tickets

https://www.luogu.org/problemnew/show/CF1096G 显然dp出用$\frac{n}{2}$个数能拼出来的每个数的方案数,平方相加就行了,d...

B - Nearly Lucky Number

Problem description Petya loves lucky numbers. We all know that lucky numbers are the positive integers whose decimal...

Lucky Man系统开发

Lucky Man开发系统,Lucky Man区块链软件开发 这些概念不再陌生,但在实践中,如何应用块链技术以及它能产生什么样的价值,仍...

Zoj - 4005 Lucky Man

题目链接 唉 ,长记性了。。。。。。。。。 万万没想到,>>1 比 //2 快多了,比赛的时候,一直超时。。。 原来Zoj python 即支...

开源的年会抽奖程序lucky-draw

luckydraw 是一款网页版的开源年会抽奖工具,基于Javascript和VUE编写。遵守MIT开源协议。luckydraw 可直接设置抽奖总人数、奖...

ZCMU 2177 Lucky Numbers (easy)

传送门: http://acm.zcmu.edu.cn/JudgeOnline/problem.php?id=2177 2177: Lucky Numbers (easy) 时间限制: 2 Sec 内存限制:...

ZOJ18th省赛 Lucky 7

<h1> [线上网址](http://acm.zju.edu.cn/onlinejudge/showContestProblems.do?contestId=378) </h1> BaoBao has just found a...

跨平台开源抽奖程序Lucky You

Lucky You是一款跨平台的开源抽奖程序。基于 tauri 框架开发,多语言支持(包括中文),可以用做抽奖活动或者课堂点名或者其他...

CF1096G Lucky Tickets [FFT/NTT]

题意 一个$n$位数,每位可以是给出的$k$个数码中的一个数,可以有前导$0$,输出前$n/2$位之和与后$n/2$位之和相等的方案数,保...

Lucky 的相关问答

还没有任何问答,马上提问

评论 (0)

加载中
更多评论
0 评论
0 收藏
分享
返回顶部
顶部