帮酷LOGO
  • 显示原文与译文双语对照的内容
Easy HTML form without PHP or JavaScript

  • 源代码名称:formspree
  • 源代码网址:http://www.github.com/formspree/formspree
  • formspree源代码文档
  • formspree源代码下载
  • Git URL:
    git://www.github.com/formspree/formspree.git
  • Git Clone代码到本地:
    git clone http://www.github.com/formspree/formspree
  • Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/formspree/formspree
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
  • Build Status

    FORMSPREE.IO

    功能HTML表单。托管于 https://formspree.io

    只要把你的表格发送到我们的网址,我们将把它。 没有 PHP,Javascript或者注册需要- 完美的static 网站 ! 例如:

    <formaction="https://formspree.io/you@email.com">
     <inputtype="text"name="name">
     <inputtype="email"name="_replyto">
     <inputtype="submit"value="Send">
    </form>

    设置起来很简单而且免费。 以下是操作方法:

    你甚至不用去 register 。

    1设置HTML表单

    更改表单的操作属性,并用你自己的电子邮件替换 your@email.com

    2请提交表单并确认你的电子邮件地址

    转到你的网站并提交表单一次。 这将发送电子邮件请求确认你的电子邮件地址,因这里无人可以以从随机网站发送垃圾邮件。

    3所有设置,接收电子邮件

    从现在开始,当有人提交该表单时,我们将把数据作为电子邮件转发给你。

    高级功能:

    表单输入可以有特殊命名的名称属性,这些属性。 它们都带有下划线。

    _replyto

    这里值用于电子邮件字段的回复。 这样你就可以以直接"答复"到电子邮件来响应最初提交表单的人。

    _next

    默认情况下,提交表单后,用户会显示 Formspree"感谢你"页面。 你可以为该页提供另一个 URL 。

    _subject

    这里值用于电子邮件主题,因这里你可以以快速回复提交而不需要 Having 编辑主题行。

    _cc

    这里值用于电子邮件字段的CC 。 这样可以将每个提交的副本发送到其他电子邮件地址。 如果你想要抄写多个电子邮件,只需要使用一个逗号列出每个用逗号分隔的电子邮件。

    _gotcha

    添加这里"蜜罐"字段,通过欺骗抓取程序来避免垃圾邮件。 如果提供了值,则提交将被忽略。 输入应该用CSS隐藏。

    使用AJAX的

    Formspree Gold用户可以通过AJAX提交表单。 这甚至是交叉的。诀窍是将 header 设置为 application/json 。 如果你使用 jQuery,那么可以这样做:

    $.ajax({
     url:"https://formspree.io/FORM_ID",
     method:"POST",
     data: {message:"hello!"},
     dataType:"json"});

    如果你遇到问题,请在维基中查看常见问题解答

    正在运行你自己的Formspree副本

    在本地主机上运行

    你需要一个 SendGrid 帐户,PostgreSQL,Redis和 python 2.7,并应该安装 pip插件,并为服务器创建一个虚拟环境。

    设置环境后,创建一个postgresql数据库,将源和光盘克隆到Formspree存储库的root 。 然后运行:

    pip install -r requirements.txt

    然后,使用如下所示的配置创建一个 .env 文件:

    API_ROOT='http://127.0.0.1:5000'
    CONTACT_EMAIL='support@example.com'
    DATABASE_URL='postgresql://<username>@127.0.0.1:5432/formspree'
    DEBUG='True'
    DEFAULT_SENDER='no-reply@localhost.com'
    LOG_LEVEL='debug'
    MONTHLY_SUBMISSIONS_LIMIT='100'
    NONCE_SECRET='y0ur_n0nc3_s3cr3t'
    HASHIDS_SALT='a salt'
    REDISTOGO_URL='127.0.0.1:6379'
    SECRET_KEY='y0ur_s3cr3t_k3y'
    SENDGRID_PASSWORD='<password>'
    SENDGRID_USERNAME='<username>'
    SERVICE_NAME='LocalFormspree'
    SERVICE_URL='http://127.0.0.1:5000'
    TEST_DATABASE_URL='postgresql://<username>@127.0.0.1:5432/formspree-test'

    确保你有一个名为 formspree的PostgreSQL数据库,并运行以下命令创建必要的表:

    python manage.py db upgrade

    你已经准备好运行服务器:

    python manage.py runserver

    运行测试

    REDISTOGO_URL='0.0.0.0:6379' 
    TEST_DATABASE_URL=postgresql://<username>@127.0.0.1:5432/formspree-test 
    NONCE_SECRET='y0ur_n0nc3_s3cr3t' 
    HASHIDS_SALT='a salt' 
    SECRET_KEY='y0ur_s3cr3t_k3y' 
    STRIPE_TEST_PUBLISHABLE_KEY='<STRIPE PUBLISHABLE>' 
    STRIPE_TEST_SECRET_KEY='<STRIPE SECRET>' 
    python -m unittest discover

    确保在运行测试时不使用 actual 。 这样做将导致你丢失 formspree 数据库中的所有数据。 而是创建一个名为 formspree-test的新数据库。

    你还可以使用领班自动化运行测试。 安装后,运行 foreman run venv/bin/python -m unittest discover 运行整个测试套件。 若要运行单个测试文件,请运行 foreman run venv/bin/python -m unittest tests.test_users 在本例中,它只运行 tests/test_users.py

    在Heroku上运行

    你将需要安装 Heroku toolbelt 。

    设置环境后,将源和光盘克隆到Formspree存储库的root 中。 然后运行:

    heroku apps:create [your project name]

    然后

    git push heroku

    你的新项目将在[ 上运行你的项目 name].herokuapp.com.

    依赖项

    Formspree需要PostgreSQL数据库并使用SendGrid发送电子邮件。 如果你正在部署到 arraylist,你可以以通过运行获得一个免费的tmodel nautilus数据库和SendGrid帐户

    heroku addons:create heroku-postgresql:hobby-dev
    heroku addons:create sendgrid

    配置 Formspree

    查看 formspree/settings.py 文件以获取应该设置为正确工作的环境变量 列表。

    Formspree是一个在GitHub上管理的开源项目。 在我们欢迎社区的所有贡献,但是请在打开问题或者请求请求之前,先查看一下参与者指南。




    Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语