小编Kib*_*gon的帖子

如何摧毁雷克斯工人入职的工作?

我在rails-3项目上使用Resque来处理计划每5分钟运行一次的作业.我最近做了一些事情,滚动了这些工作的创造,堆栈已经打了1000多个工作.我修复了导致许多作业排队的问题,现在我遇到的问题是错误创建的作业仍然存在,因此将作业添加到具有1000多个作业的队列中变得很难测试.我似乎无法阻止这些工作.我尝试使用flushall命令从redis-cli中删除队列,但它不起作用.我错过了什么吗?因为我似乎无法找到摆脱这些工作的方法.

scheduled-tasks resque redis ruby-on-rails-3

38
推荐指数
6
解决办法
3万
查看次数

在运行rake任务时如何跳过加载Rails初始值设定项?

我的rails应用程序有一个网站爬虫,可以加载爬虫在rails初始化程序中使用的身份验证凭据config/initializers.初始化程序通过调用SiteLogin模型中的模型方法来加载身份验证.

当我运行rake db:migrate创建SiteLogin模型表时,它会失败,因为初始化程序期望数据库表已经存在.我可以简单地在我的初始化程序中注释掉代码,运行迁移来创建表,然后取消注释初始化程序代码,而不用担心问题.

问题是,我正在使用Capistrano进行部署,这意味着我必须首先部署而不使用初始化代码来运行迁移,然后再使用初始化代码进行部署.有没有更好的方法来做到这一点,或者在这种情况下我的方法是完全错误的.

这里有一些代码示例可以更好地解释我的情况:

# config/initializers/site_crawler_init.rb
SiteCrawler.setup do |config|
  config.hostname = "www.example.com"
end

# model/site_crawler.rb
class SiteCrawler
  ...
  class << self
    attr_accessor :configuration

    def setup
      self.configuration ||= Configuration.new
      yield(configuration)
    end
  end

  class Configuration

    attr_accessor :hostname, :login_credentials

    def initialize
      @login_credentials = SiteLogin.admin_user
      ...
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails ruby-on-rails-3

18
推荐指数
2
解决办法
5142
查看次数

如何在Spring-security登录页面中启用LocaleInterceptor来更改语言环境?

请原谅我,如果之前已经问过这个问题,但我还没有得到一个帮助我解决问题的直接答案.我有一个使用spring-security保护的gwt应用程序.Spring安全性只是验证用户身份并重定向到gwt应用程序.现在我希望用户能够从登录页面上的链接更改区域设置,之后区域设置将存储在cookie上并在应用程序中使用.

我在applicationContext.xml中有以下配置

<http auto-config="true">
    <intercept-url pattern="/mywebapp/**" access="ROLE_USER"/>
    <intercept-url pattern="/gwt/**" access="ROLE_USER"/>
    <intercept-url pattern="/**/*.html" access="ROLE_USER"/>
    <intercept-url pattern="/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
    <intercept-url pattern="/login.jsp*" access="IS_AUTHENTICATED_ANONYMOUSLY"/>
    <form-login login-page="/login.jsp"/>
</http>
<beans:bean id="userDetailsService"
    class="com.kibet.mywebapp.server.auth.UserDetailsServiceImpl">
</beans:bean>

...
<!-- Application Message Bundle -->
<beans:bean id="messageSource"
class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    <beans:property name="basename" value="classpath:messages" />
    <beans:property name="defaultEncoding" value="UTF-8"/>
</beans:bean>

<beans:bean id="localeChangeInterceptor"
class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
    <beans:property name="paramName" value="lang" />
</beans:bean>

<beans:bean id="localeResolver"
class="org.springframework.web.servlet.i18n.CookieLocaleResolver">
    <beans:property name="defaultLocale" value="pt"/>
</beans:bean>

<beans:bean id="urlMapping"
     class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <beans:property name="interceptors">
    <beans:list>
        <beans:ref bean="localeChangeInterceptor"/>
    </beans:list>
    </beans:property>
    <beans:property name="mappings">
    <beans:value>/login.jsp=userDetailsService</beans:value>
    </beans:property>
</beans:bean>
Run Code Online (Sandbox Code Playgroud)

这似乎不起作用.我的类路径中有locale属性文件messages_en.properties,messages_es.properties和messages_pt.properties.它唯一有效的时间是我更改浏览器的默认语言环境.据我所知,登录页面是由spring-security生成的,处理程序映射不能拦截语言环境更改请求.如果这就是我如何解决这个问题的原因?非常感谢帮助.

这是我的自定义过滤器代码.

public class InternationalizationFilter implements …
Run Code Online (Sandbox Code Playgroud)

locale spring-security internationalization

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

我如何按年分组?

我有一个书籍模型,其日期类型列名为publish_date.根据我的观点,我正在翻阅书籍,我想按年份对书籍进行分组,这样我每年都会有一个标题,而那一年出版的书籍将列在年度标题下面.

因此,从2010年开始,将列出2010年出版的所有书籍,然后列出2009年出版的所有书籍的另一个标题"2009",等等.

<% @all_books.each do |book| %>
   <%=link_to book.title + ", (PDF, " + get_file_size(book.size) + ")" %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

通过book.publish_date.strftime("%Y"),我能够得到年份,但我不知道如何按年份对条目进行分组.任何有关这方面的帮助将不胜感激.

ruby model views ruby-on-rails

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

ibatis和java中如何处理多表的sql映射

我正在尝试将 Ibatis 与 GWT 一起使用,我有这个场景,我有数据库表机场、航站楼和航班。一个机场可以有不同的航站楼。一个航站楼可以有一个机场和多个航班。一个航班可以有一个航站楼。所以表结构看起来像这样。

机场 -id -name -terminal_id

航站楼 -id -name -flight_id

航班 -id -airline -terminal_id

我的选择语句看起来像这样

SELECT airport.name AS Airport,
       terminals.name AS Terminal,
       flights.airline,
FROM airport,
     terminals,
     flights
WHERE airport.terminal_id = terminals.id
  AND terminals.flight_id = flights.id;
Run Code Online (Sandbox Code Playgroud)

得到这个结果的 sql 映射是什么样的。我感到困惑的是结果集是表的组合,因此结果集不是三个表中任何一个的模型对象。

java ibatis

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