def new
before_filter do
redirect_to "/" unless current_admin || current_company
flash[:notice] = 'You dont have enough permissions to be here' unless current_admin || current_company
end
CODE CODE CODE
end
def edit
before_filter do
redirect_to "/" unless current_admin.id = 5
flash[:notice] = 'You dont have enough permissions to be here' unless current_admin || current_company
end
CODE CODE CODE
end
Run Code Online (Sandbox Code Playgroud)
这是我想要做的代码,但我无法弄清楚如何正确地做到这一点.我想要实现的是为我的每个动作应用before_filter规则.因此,或许用户可以存取权限去INDEX行动,但不会在修改动作等我知道的before_filter方法运行一个单一的时间,我不能跑4个before_filters,我只是给的,因为我的英语不好一些参考.
您必须知道我正在使用Devise作为current_admin和current_company方法.我需要应用不同的过滤器(如果是admin或者如果是company.id = X)和其他操作.
在此先感谢,我非常喜欢这里.任何帮助将不胜感激.
好吧,问题是尝试从控制器呈现一个表单来创建一个新条目..为此我调用脚手架创建附带的默认表单我试图使它像这样:
<%= render :partial => 'contactos/form' %>
Run Code Online (Sandbox Code Playgroud)
我得到以下错误
undefined method 'model_name' for NilClass:Class
有没有办法只从视图本身渲染?
如果没有...我应该将哪些参数添加到控制器?
现在我只有以下代码:
Class DisplayController < ApplicationController
def index
@contactos = Contacto.all
end
end
Run Code Online (Sandbox Code Playgroud)
*这是视图控制器,而不是我的脚手架中具有创建更新和编辑功能的视图控制器
好的,我做了一个非常大的研究,但没有答案可以解决我的问题.(这是我第一次提出问题,提前抱歉我可以犯的任何错误)
model-view-controller ruby-on-rails scaffolding ruby-on-rails-3.1
尝试在给定的 tableView 中使用预构建的 UI 显示联系人,当用户选择要显示的联系人时,会出现以下错误:
CNPropertyNotFetchedException',原因:'联系人 0x7fded8ee6f40 缺少一些必需的密钥描述符:[CNContactViewController descriptorForRequiredKeys]>
我已经尝试通过这种方法解决:Contact is Missing some of the required key detectors in ios
所以我的联系人数组创建如下:
func searchContactDataBaseOnName(name: String) {
results.removeAll()
let predicate = CNContact.predicateForContactsMatchingName(name)
//Fetch Contacts Information like givenName and familyName
let keysToFetch = [CNContactGivenNameKey, CNContactFamilyNameKey, CNContactViewController.descriptorForRequiredKeys()]
let store = CNContactStore()
do {
let contacts = try store.unifiedContactsMatchingPredicate(predicate,
keysToFetch: keysToFetch)
for contact in contacts {
self.results.append(contact)
}
tableContacts.reloadData()
}
catch{
print("Can't Search Contact Data")
}
}
Run Code Online (Sandbox Code Playgroud)
当用户点击行索引时,我尝试通过执行以下操作来显示:
func tableView(tableView: UITableView!, didSelectRowAtIndexPath indexPath: NSIndexPath!) …
Run Code Online (Sandbox Code Playgroud) 所以我在我的控制器中有一个动作get_response
来执行API:
def memeapi
require "net/http"
require "uri"
@meme = Meme.new(params[:meme])
url = "http://version1.api.memegenerator.net/Instance_Create?username=apigen&password=SECRET&languageCode=en&generatorID=#{@meme.memeid}&imageID=#{@meme.imgid}&text0=#{@meme.text0}&text1=#{@meme.text1}"
resp = Net::HTTP.get_response(URI.parse(url))
data = resp.body
# I want to convert it to the Rails data structure - a hash
result = ActiveSupport::JSON.decode(data)
end
Run Code Online (Sandbox Code Playgroud)
好的,但现在我想要取回信息,用它来创建另一个对象,但我甚至无法格式化我得到的信息,任何人都可以告诉我我做错了什么,我错过了什么?
我希望能够从get_response
... 获取信息...谢谢.
这是JSON结构
{"success":true,"result":{"generatorID":45,"displayName":"Insanity Wolf","urlName":"Insanity-Wolf","totalVotesScore":0,"imageUrl":"/cache/images/400x/0/0/20.jpg","instanceID":13226270,"text0":"push","text1":null,"instanceImageUrl":"/cache/instances/400x/12/12916/13226270.jpg","instanceUrl":"http://memegenerator.net/instance/13226270"}}
Run Code Online (Sandbox Code Playgroud)
我不想保存所有的字段btw ...