Tag: 的Ruby on 轨道

组织同一模型的两个不同视图的正确方法是什么?

ROR新手。 我读了很多,但我觉得我吸收很慢。 我正在尝试创建一个包含相同内容的两个不同视图的Web应用程序: 一个页面充满了艺术家的访问者按图像浏览(在网站的根目录)。 一个页面,其中列出了那些相同的艺术作品,并显示了我为它们定义的所有相关属性(媒体等),因此我可以查看与每个艺术作品相关的数据。 这应该是我的超轻量级管理页面。 我的问题是: 由于我是从脚手架生成这个网站,我目前正在使用views / artwork / index.html.erb作为管理表视图(应该是私有的),我创建了一个“主页”并添加了一些代码到’家庭’视图(和pages_controller)使艺术品出现在那里(为公众)。 我这样做了吗? 这是一种很好的组织方法吗? 我已经在登录后面的页面上安装了设计和成功隐藏链接以编辑艺术品,但我不知道封锁应用程序部分的正确方法(例如管理表页面,编辑页面等)剩下的世界。 我应该将这些页面放在不同的文件夹中吗? 如何将这些页面设为私有? 以下是一些片段:home.html.erb 艺术品/ index.html.erb: Listing artworks Image Title Genre Category Medium Date Dimensions Availability Rating Edit x pages_controller.rb和artworks_controller.rb都有这样的代码: def index if params[:tag] @artworks = Artwork.tagged_with(params[:tag]) else @artworks = Artwork.all end end pages_controller.rb: def home @artworks = Artwork.all end 和routes.rb: […]

无法安装Rails – Windows 8,Ruby 2.0.0p247

我对Ruby on Rails比较陌生。 我试图使用本指南安装它,但我似乎得到一个错误说 ERROR: While executing gem … (OptionParser::InvalidOption) invalid option: –include-dependencies 我正在运行Windows 8,我的Ruby版本是2.0.0p247。 如果有人能让我知道这是怎么回事,我怎么能解决这个问题等等,这将是非常好的。 谢谢!

RAILS_ENV在哪里?

我正在看这篇关于rake命令的文章,但是不知道RAILS_ENV在哪里。 那是在特定文件中的某个地方吗? db:create Creates the database for the current RAILS_ENV environment. If RAILS_ENV is not specified it defaults to the development and test databases.

放大gmap4rails中的特定区域

如何放大gmaps4rails中的特定坐标。 假设在我的应用程序的索引页面上我想显示所有用户的地址,但希望最初地图应该关注美国并具有一定的缩放级别 提前致谢

用户重写这个循环?

我想知道这是否是我想要完成的最佳实践… 首先,我们有模型类别,类别,has_manypost。 现在让我们说,用户添加post。 现在,我有一个页面,我想按类别仅显示当前用户的post。 假设我们有以下类别:A,B和C. 用户1已发布在类别A和B中。 在我看来,我有类似的东西: 0}.each do |category| %> 在大多数情况下它几乎就在那里。 问题是,如果在其中输入任何post,它仍然会显示一个空类别(即使当前用户没有在该类别中输入post。 所以问题归结为: 如何使以下循环仅计算当前用户的类别中的post? 0} .each do | category | %> 最好的,艾略特

Rails:不需要的实例出现在视图中并保存到数据库中

文件上传在users/edit.html.erb页面上处理。 每次上传文件并刷新编辑页面时,会出现更多 div,每次都会使页面上的p.file_field按钮数量翻倍。 似乎正在发生的事情是由用户控制器的编辑操作中的@picturething = @character.picturethings.build引起的。 以前的@picturething实例保存在内存中,并由f.fields_for :picturethings显示。 所以我最后说8 divs。 当我使用其中一个文件将文件保存到数据库时,7个图片将保存到数据库中,每个:picture都带有一个空的:picture ,以及一个用:picture保存到数据库的:picture 。 所以下次页面上有16个 div。 我以前从未见过这种行为.build 。 我该如何纠正? users_controller.rb def edit @character = Character.find_by(callsign: params[:callsign]) @user = @character.sociable @picturething = @character.picturethings.build end def update_pictures @character = Character.find_by(callsign: params[:callsign]) @user = @character.sociable if @character.update_attributes(update_pictures_user_params) redirect_to(edit_user_path(@user)) else redirect_to(edit_user_path(@user)) end end def update_pictures_user_params params.require(:character).permit({picturethings_attributes: :picture}) end 意见/用户/ edit.html.erb […]

在Rails中执行Ruby函数

在我的索引视图中,我希望添加一个按钮来执行一个名为myFunction(myArg)的函数。 此函数位于behaviours/myRubyFile.rb 。 如何创建一个使用特定参数执行该function的按钮。 编辑:现在我收到一个新错误 The action ‘my_func’ could not be found for FunctionsController 但是在FunctionsController中定义了一个函数my_func 。

如何从Rails中的生产中删除记录

奇怪的是,我需要从生产数据库中删除一条记录,但是我没有在视图中保留一个Destroy链接。 所以目前,我只是补充说: 在我需要的时候推动它。 这远非理想。 有没有其他方法可以做到这一点,例如当我们使用new或edit附加url时。 我尝试添加destroy甚至delete但这显然不起作用。

Rails:从下拉列表中搜索数年和数月

我使用Rails 5.1,我试图用两个下拉选择列表-1搜索。 年,2个月 – 以及提交按钮。 在我看来: “Year”,:start_year => DateTime.now.year,:end_year => DateTime.now.year – 7, prefix: ‘select’},{:field_name => ‘year’, :id => ‘start-year’}) %> “month”,use_short_month: true, prefix: ‘select’},{:field_name => ‘month’, :id => ‘start-month’}) %> “button”, :class=>”Test”, :name=>”submit”) %> 在我的jobs_controller.rb中: # GET /jobs.json def index if params[:year].present? or params[:month].present? month_with_leading_zero = params[:month].to_s.rjust(2, “0”) start_date = “#{params[:year]}-#{month_with_leading_zero}-1” end_date = Time.now.strftime(“%Y-%m-%d”) […]

同一角色的不同function

我正在开发一个项目,我需要根据角色添加“function”。 我解释。 我的用户可以参加活动。 但每个用户在每个事件中都有不同的角色。 同样,在事件上具有相同角色的两个用户可以具有不同的“function”。 假设一个人可以更新资源,另一个则不能。 你知道任何可以实现这一目标的gem吗? – 更新 – 我的情况 : 我的意思是这是一个角色’活动组织者’,我希望能够为这个角色添加不同的function。 我希望一个“活动组织者”能够将Shop添加到Event ,但其他“活动组织者”不能这样做。 例: 您可以以“公司”为例,其门锁由NFC钥匙控制。 你有一个角色“访客”,一些“访客”可以打开你的秘密实验室,有些只是可以访问你的办公室。 我不想为我公司的每一扇门创造一个“角色”。