博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
rails 常用方法
阅读量:6111 次
发布时间:2019-06-21

本文共 2430 字,大约阅读时间需要 8 分钟。

bundle install --without production  不安装production中的gem./configure && make && sudo make install  把源代码编译成可执行的程序$ bundle exec rake -T db  可查看所有与数据库相关的任务,rake db:就是用来管理数据库的,是数据库不是表rake -T 查看所rake 命令heroku run rake db:migratebundle exec rake db:migrate VERSION=0  数据库回退到指定版本,0就是数据库最开始的状态超链接show  <%= link_to user.name, user %>delete  <%= link_to "delete", user, method: :delete,  data: { confirm: "You sure?" } %>edit   <%= link_to "Settings", edit_user_path(current_user) %>生产环境rails s --environment  productionbundle  exec  rake db:migrate RAILS_ENV = productionbundle exec rake db:migrate:reset   删除数据库中数据调试debugger测试页面内容测试(view),数据库数量/内容测试(model),controller测试先单元测试,测试单个功能。再从页面考虑,根据行为,集成测试rails g integration_test signuprake  test:integrationbundle exec rake test TEST=test/integration/users_login_test.rbbundle exec rake test TEST=test/integration/users_login_test.rb  TESTOPTS="--name test_login_with_valid_information"测试中cookies中不能使用符号键,但可以实用字符串键   cookies[:key]会返回nil    cookies['key']会返回正确的值测试中可以实用assigns获取controller中的实例变量,比如@user,test中assgins(:user)安全随机数SecureRandom.urlsafe_base64  返回A-Z a-z 0-9 -_    长度为22的随机字符串,每一位有64种可能cookiecookies[:remember_token] = { value: remember_token,   expires: 20.years.from_now.utc }cookies.permanent[:remember_token] = remember_token    permanent  rails会自动将时间设为20年之后cookies.signed[:user_id] = user.id     存入浏览器前,安全加密cookiecookies.permanent.signed[:user_id] = user.idUser.find_by(id: cookies.signed[:user_id])BCrypt::Password.new(remember_digest).is_password?(remember_token)辅助方法1.year.from_now           10.weeks.ago               1.kilobyte               5.megabytes类方法def self.new_tokenSecureRandom.urlsafe_base64endclass User < ActiveRecord::Baseclass << selfdef digest(string)cost = ActiveModel::SecurePassword.min_cost ? BCrypt::Engine::MIN_COST :BCrypt::Engine.costBCrypt::Password.create(string, cost: cost)enddef new_tokenSecureRandom.urlsafe_base64endendActive Recordnew_record? 检测对象是新创建,还是已经存在于数据库路由创建是post,编辑是patch。  构建form_for(@user)表单,根据@user.new_record?判断该发送什么请求局部模板rails将@users组成user对象列表,传给render后,rails会自动遍历这个列表,然后使用局部视图_user.html.haml渲染每个对象一。
    <%= render @users %>
_user.html.erb
  • <%= gravatar_for user, size: 50 %><%= link_to user.name, user %>
  • 二。局部模板名没必要_user,如果@users.each do |foobar|,则是render foobar
      <% @users.each do |user| %><%= render user %><% end %>
    bundle execbundle exec annotate

     

    转载于:https://www.cnblogs.com/znsongshu/p/6080214.html

    你可能感兴趣的文章
    pfsense锁住自己
    查看>>
    vsftpd 相关总结
    查看>>
    bash complete -C command
    查看>>
    解决zabbix 3.0中1151端口不能运行问题
    查看>>
    售前工程师的成长---一个老员工的经验之谈
    查看>>
    Get到的优秀博客网址
    查看>>
    dubbo
    查看>>
    【Git入门之四】操作项目
    查看>>
    老男孩教育每日一题-第107天-简述你对***的理解,常见的有哪几种?
    查看>>
    Python学习--time
    查看>>
    在OSCHINA上的第一篇博文,以后好好学习吧
    查看>>
    高利率时代的结局,任重道远,前途叵测
    查看>>
    Debian 6.05安装后乱码
    查看>>
    欢迎大家观看本人录制的51CTO精彩视频课程!
    查看>>
    IntelliJ IDEA中设置忽略@param注释中的参数与方法中的参数列表不一致的检查
    查看>>
    关于软件开发的一些感悟
    查看>>
    uva 10806
    查看>>
    纯CSS3绘制的黑色图标按钮组合
    查看>>
    Linux中环境变量文件及配置
    查看>>
    从0开始学Flutter
    查看>>