小编Hun*_*der的帖子

Rails Activeadmin - 自定义关联选择框

在我的Rails应用程序中,我有以下模型:

class Idea < ActiveRecord::Base
  belongs_to :user
end

class User < ActiveRecord::Base
  has_many :ideas
end
Run Code Online (Sandbox Code Playgroud)

我正在为我的模型创建ActiveAdmin CRUD Idea,其自定义表单看起来像这样:

form do |f|
  f.inputs do
    f.input :member
    f.input :description
  end
end
Run Code Online (Sandbox Code Playgroud)

要求是为成员关联的内容提供自定义文本,即"#{last_name}, #{first_name}".是否可以自定义我的成员选择框来实现它?

任何帮助将不胜感激.

ruby ruby-on-rails activeadmin

39
推荐指数
1
解决办法
3万
查看次数

如何在rails中超时flash消息

我目前有标准的flash消息与设计成功/失败的宝石等.我添加了通过close类手动关闭带有一些引导功能的消息的选项.下面显示了一个小片段.

{ 
  <a class="close" data-dismiss="alert">&#215;</a>
  <%= content_tag :div, msg, :id => "flash_#{name}" %>
}
Run Code Online (Sandbox Code Playgroud)

我希望有一个选项来创建一个超时时间段,警报消息将在5秒后关闭.不确定在Rails中是否有一种简单的方法可以做到这一点.

谢谢

ruby alert ruby-on-rails-3 twitter-bootstrap

10
推荐指数
1
解决办法
8814
查看次数

X-Forwarded-Proto for Rails落后于ELB背后的nginx

我几十个小时都坚持这件事.我无法让它发挥作用.我尝试了一切我能想到和/或在网上找到的东西.

所以,我的应用程序指向ELB(web).ELB侦听80和443并将流量发送到80(此处SSL终止)到成员实例(即nginx).

Nginx代理应用程序请求在多个实例前面的另一个ELB(app).这些实例运行puma.

一切正常,除非我尝试使用方案访问URL(我用于force_ssl该控制器)https,我得到一个重定向循环.

这是我的nginx配置看起来像

  location @{{app_name}} {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_redirect off;
    proxy_pass http://{{app_name}};
    # limit_req zone=one;
    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;
  }
Run Code Online (Sandbox Code Playgroud)

(显然app_name被ansible取代.)

而不是$scheme,我尝试了硬编码https,$proxy_add_x_forwarded_proto但没有一个对我有效.我仍然得到循环.

然后我开始检查envrails中的内容,无论我在nginx配置中设置哪个头,我都会看到以下值.

"SERVER_PROTOCOL"=>"HTTP/1.1",
"HTTP_X_FORWARDED_PROTO"=>"http",
"rack.url_scheme"=>"http",
Run Code Online (Sandbox Code Playgroud)

我不确定我做错了什么.任何帮助赞赏!注意:我已经检查了所有找到的SO线程,没有人帮忙!

ruby-on-rails nginx amazon-elb

9
推荐指数
1
解决办法
5185
查看次数

如何将paginate与anchor id结合起来

我对Ruby on Rails非常陌生并且在尝试修复我公司网站上的一些错误时学习.我正在尝试对与特定锚点组合的记录集合进行分页,即当用户点击下一页/上一页时,分页发生并且用户登陆页面的特定部分.这就是我的代码目前的样子:

视图

<%= page_navigation_links @student_logs, :page %></p>
Run Code Online (Sandbox Code Playgroud)

控制器:

@student_logs.paginate(:page => params[:page], :per_page => 10)
Run Code Online (Sandbox Code Playgroud)

application_helper

def page_navigation_links(pages, param_name=:page)

  will_paginate(pages, :class => 'pagination', :inner_window => 2, :outer_window => 0, :renderer => BootstrapHelper::LinkRenderer, :previous_label => '&larr;'.html_safe, :next_label => '&rarr;'.html_safe, :param_name => param_name)

end
Run Code Online (Sandbox Code Playgroud)

这适用于我的分页,但我需要在此代码中引用"锚ID",例如学生日志,以便当用户导航到其他页面时,浏览器会将用户导航到ID为"student_logs"的标题".

我无法弄清楚如何做到这一点.有人可以帮忙吗?

ruby-on-rails

8
推荐指数
1
解决办法
1287
查看次数

Rails模型在请求中重新加载,导致AssociationTypeMismatch

当我们在开发模式下运行时,我们在Rails 3.1中遇到了问题.似乎我们的模型有时会在请求中重新加载,并且在我们的模型类上设置了新的object_id.然后导致ActiveRecord :: AssociationTypeMismatch

ActiveRecord :: AssociationTypeMismatch字符(#2194222580)预期,得到字符(#2185863000)

如果我们把config.cache_classes = truedevelopment.rb这个问题似乎消失,但它是不现实的发展一样,因为我们必须不断地重新启动我们的服务器.

任何人都知道为什么模型可以在请求中重新加载,或者是否有办法可以强制缓存持续整个请求?

activerecord ruby-on-rails

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

Javascript停止图像加载

我正在创建一个网站,其中一个页面正在使用来自外部网站的javascript文件

外部js包含(实际上加载)我在页面上不需要的图像.

如何阻止该图像加载(假设img url是"http://image.com/img.png")?是否有任何javascript代码可以做到这一点?

感谢大家

html javascript jquery image

6
推荐指数
2
解决办法
7946
查看次数

安装活动管理员时,activeadmin.git(在主服务器上)尚未检出错误

活动的管理员宝石被添加到我的rails项目,但每次我尝试安装rails g active_admin:install,我收到错误

git://github.com/activeadmin/activeadmin.git(在主站)尚未签出.跑bundle install第一.

我在运行"rails g active_admin:install"之前肯定运行了bundle.运行"捆绑显示"后,我看到我已将"*activeadmin(1.0.0.pre 3f916d6)"添加到我的项目中,但不断收到此错误消息.我的宝石文件如下捆绑显示的活动管理员错误

source 'https://rubygems.org'

gem 'rails', '4.1.8'
gem 'sqlite3'
gem 'sass-rails', '~> 4.0.3'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.0.0'
gem 'jquery-rails'
gem 'turbolinks'
gem 'jbuilder', '~> 2.0'
gem 'sdoc', '~> 0.4.0',

    group: :doc
gem 'spring',        group: :development

gem 'devise'
gem 'activeadmin', github: 'activeadmin'
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails github ruby-on-rails-4

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

升级到rails 6.1后Rails路线问题

升级到 Rails 6.1 后,出现以下错误:

undefined method `find_script_name' for nil:NilClass
Run Code Online (Sandbox Code Playgroud)

在这种情况下,正在使用的路线是,root_path但也为许多其他路线获取此路线!routes.rb如下(删除所有其他路由定义后尝试这样做)

Rails.application.routes.draw do
  root 'home#index'
end
Run Code Online (Sandbox Code Playgroud)

我在网上找到的唯一相关的东西是这个提交。任何人都知道可能出了什么问题吗?

我在红宝石上运行2.7.2

ruby-on-rails ruby-on-rails-6.1

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

如何在Wordpress永久链接中包含自定义字符串?

我对WordPress的永久链接如何工作有点困惑,特别是超出了Wordpress自己的用法.我的永久链接就像:

%post_id%-%post_name%
Run Code Online (Sandbox Code Playgroud)

但是single.php我希望将另一个链接放到页面本身但是使用不同的查询字符串.单击它时,永久链接结构可能如下所示:

%mystring%-%post_id%-%post_name%
Run Code Online (Sandbox Code Playgroud)

我想从中得到价值$_GET['action'],所以:

$_GET['action'] = %mystring%
Run Code Online (Sandbox Code Playgroud)

我的计划是将它解释为:

if('xx' == $_GET['action']){
   //do xx stuff
} else if ('yy'==$_GET['action']){
   //do yy stuff
} else {
   //show the single post as a single.php always shows
}
Run Code Online (Sandbox Code Playgroud)

这意味着,我想解析$_GET['action']可选的.如果我不解析它,即使它在查询字符串中可用,我希望页面正确呈现.

为了完成这项工作,我应该在哪里工作?另外我如何形成<a>标签的链接?通常我们这样做链接:

<a href="'.the_permalink().'">TEXT</a>
Run Code Online (Sandbox Code Playgroud)

但你已经知道了,我需要在帖子的原始永久链接之前添加一些文字.

提前致谢.

php wordpress permalinks

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

提取与短语匹配的行

我想匹配整行,并在该行上匹配单词/短语!我尝试了这个:

preg_match("/PHRASE/i", $dictionary,$matches);
Run Code Online (Sandbox Code Playgroud)

但是我只得到匹配的单词!但我需要整条线!超过15K条线!

php regex

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

如何开发Google Plus应用程序

可能重复:
是否已有Google+ API?

是否有可能为Google Plus开发应用程序?如果是这样,怎么样?我没有找到任何相关信息.

有没有人有这方面的任何信息?

如果有,请分享.

提前致谢.

google-plus

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

带有处理程序的backbone.js 滚动事件未解除绑定

我已将窗口的滚动事件绑定到视图的方法,例如:

MyView = Backbone.View.extend({
  initialize: function(){
    _.bindAll(this, 'handleScrolling');
    $(window).off('scroll', this.handleScrolling).on('scroll', this.handleScrolling);
  }
})
Run Code Online (Sandbox Code Playgroud)

我看到这行不通。如果此回调被触发的次数与此视图被实例化的次数一样多。但是,如果我从 中删除处理程序off,则它会正确解除绑定并且每次滚动仅触发一次。喜欢:

$(window).off('scroll').on('scroll', this.handleScrolling);
Run Code Online (Sandbox Code Playgroud)

知道为什么会这样吗?我不想从此事件中删除所有回调,因为其他视图/代码可能会将事件绑定到它,这将使应用程序表现出意外。

有没有更好的方法将事件绑定到当前视图范围之外的窗口/文档或其他元素?

jquery backbone.js

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