所以我在一周前在我们的BETA应用程序中使用ElasticSearch实现了Haystack.我可以注意到的一件事是,通过Haystack和Django的ORM,将一些数据(大量)返回给我们的用户(例如列出应用程序中的所有用户)要快得多.现在,我将发布REST服务(使用TastyPie),以便在接下来的几周内为可能的平板电脑提供服务,因为我希望能够从iPad,Nexus平板电脑等访问这些信息.
我想知道的一件事是,我应该何时查询ORM与Haystack/ElasticSearch?例如,如果平板电脑上的用户请求特定的一组用户,我们是应该让TastyPie查询ORM,还是转到ElasticSearch?
如果我们看看这个答案Django:Haystack或ORM,我们都同意DB可以检索和写入数据.但是,我们可以说,一旦搜索引擎更新,Haystack/ElasticSearch可以更快地检索更快的速度吗?
我有点困惑的是,如果它更快,我们不应该查询Haystack吗?!
晚上好!
因此,在将数据保存到Core Data中时,我一直在理解到底是怎么回事.首先,一个简单的问题:
1)我什么时候应该使用persistentStoreManagedObjectContext?何时应该使用mainQueueManagedObjectContext ?! 现在,我总是使用persistentManagedObjectContext,但我可以看到一个RestKit调用"getObjectsPath",该对象将拥有mainQueueObjectContext.这是为什么?!
谢谢!
我在这里有一些问题.我试图返回由消息和模型实例组成的JSON响应:
class MachineModel(models.Model):
name = models.CharField(max_length=64, blank=False)
description = models.CharField(max_length=64, blank=False)
manufacturer = models.ForeignKey(Manufacturer)
added_by = models.ForeignKey(User, related_name='%(app_label)s_%(class)s_added_by')
creation_date = models.DateTimeField(auto_now_add=True)
last_modified = models.DateTimeField(auto_now=True)
machine_model_model = form.save(commit=False)
r_user = request.user.userprofile
machine_model_model.manufacturer_id = manuf_id
machine_model_model.added_by_id = request.user.id
machine_model_model.save()
alert_message = " The'%s' model " % machine_model_model.name
alert_message += ("for '%s' " % machine_model_model.manufacturer)
alert_message += "was was successfully created!"
test = simplejson.dumps(list(machine_model_model))
data = [{'message': alert_message, 'model': test}]
response = JSONResponse(data, {}, 'application/json')
class JSONResponse(HttpResponse):
"""JSON response class."""
def __init__(self, obj='', …Run Code Online (Sandbox Code Playgroud) 所以我刚刚切换到RestKit 0.2,我目前正在使用新的"HttpClient",它基本上是一个AFHTTPClient.我有这行代码:
RKObjectManager* objectManager = [RKObjectManager sharedManager];
NSDictionary* params = [[NSDictionary alloc] initWithObjectsAndKeys: login, @"username", password, @"password", nil];
[[objectManager HTTPClient]postPath:@"users/login/?format=json" parameters:params
success:^(AFHTTPRequestOperation *operation, id responseObject)
{
//reponseObject vs operation.response
NSLog(@"%@", responseObject);
}
failure:^(AFHTTPRequestOperation *operation, NSError *error)
{
NSLog(@"ERROR");
}];
Run Code Online (Sandbox Code Playgroud)
此POST调用以以下格式返回JSON响应:{"api_key":"....","username":"...."}.就如此容易.
在切换到0.2之前,我能够通过执行以下操作获取响应中的api_key键:
[[RKClient sharedClient] post:@"/users/login/?format=json" usingBlock:^(RKRequest *request)
{
request.onDidLoadResponse = ^(RKResponse *response)
{
id parsedResponse = [response parsedBody:NULL];
NSString *apiKey = [parsedResponse valueForKey:@"api_key"];
}
}.....];
Run Code Online (Sandbox Code Playgroud)
http://restkit.org/api/master/Classes/RKResponse.html
但是现在,我不能这样做,如果我在responseObject上做一个NSLog,我得到:
<7b227265 61736f6e 223a2022 41504920 4b657920 666f756e 64222c20 22617069 5f6b6579 223a2022 61356661 65323437 66336264 35316164 …
所以我想让我的应用程序流式传输位于Amazon S3上的视频.到目前为止,我可以用Apple的MediaPlayer教程做到这一点没问题:https://developer.apple.com/library/ios/#samplecode/MoviePlayer_iPhone/Introduction/Intro.html
但是,我在我的应用程序中使用RestKit,因此也在AFNetworking中使用.我看到AFNetworking正在使用缓存,所以我想知道是否可以对视频做同样的事情?我不知道如何使用AFNetworking流式传输视频.这将是一个良好的开端.我可以使用AFNetworking下载电影......但是我可以使用它进行流式传输,或者我应该只使用#import给出的流式传输系统
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"https://s3.amazonaws.com/leclerc/videos/sop/IMG_0141.MOV"]];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *path = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"IMG_0141.MOV"];
operation.outputStream = [NSOutputStream outputStreamToFileAtPath:path append:NO];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"Successfully downloaded file to %@", path);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
}];
[operation start];
Run Code Online (Sandbox Code Playgroud)
例如,如果我在Vevo上观看音乐片段然后在5分钟后重新播放,我是否必须在iPad上重新下载?这对我来说是全新的,对不起我的无知!
我试图让带有引导程序的导航栏出现在某个div之后,称为"A".Div"a"位于页面顶部,高度约为400px.一旦用户滚过div"a"和滚动条,我希望滚动条粘在顶部.类似于这样的事情:https://www.facebook.com/home但我顶部没有视频,它是一个图像.
我们可以自己引导吗?
谢谢!
我正在尝试显示存储在Amazon S3 Bucket上的图像.URL类似于https://s3.amazon.com/..../test.jpg.每当我在iPhone模拟器上执行此操作时,图像都会正确显示.但是,如果我在实际设备上测试它,我会继续:
错误域= NSURLErrorDomain代码= -1202"此服务器的证书无效.您可能连接到假冒"s3.amazonaws.com"的服务器,这可能会使您的机密信息面临风险." UserInfo = 0x20007030 {NSErrorFailingURLStringKey = https://s3.amazonaws.com/.../test.jpeg,NSLocalizedRecoverySuggestion =您是否还要连接到服务器?,NSErrorFailingURLKey = https://s3.amazonaws.com/. ../test.jpeg,NSLocalizedDescription =此服务器的证书无效.您可能正在连接到假装是"s3.amazonaws.com"的服务器,这可能会使您的机密信息面临风险.,NSUnderlyingError = 0x20014d40"此服务器的证书无效.您可能正在连接到服务器假装是"s3.amazonaws.com",可能会使您的机密信息面临风险.",NSURLErrorFailingURLPeerTrustErrorKey =}
有任何想法吗?!
谢谢!
晚上好,
我目前正在使用Django创建一个站点,并使用用户配置文件扩展了用户.我有一个小问题.这是我的情况:
这可能吗?非常感谢!
在admin.py中
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin as DjangoUserAdmin
from django.contrib.auth.models import User
from accounts.models import UserProfile
class UserProfileInline(admin.TabularInline):
model = UserProfile
class UserAdmin(DjangoUserAdmin):
inlines = [ UserProfileInline,]
admin.site.unregister(User)
admin.site.register(User, UserAdmin)
Run Code Online (Sandbox Code Playgroud)
在model.py中
class UserProfile(models.Model):
user = models.OneToOneField(User)
employee_number = models.PositiveIntegerField(unique=True)
def __unicode__(self):
return 'Number'
Run Code Online (Sandbox Code Playgroud) 我有以下型号:
class EquipmentModel(models.Model):
name = models.CharField(max_length=64, blank=False)
description = models.CharField(max_length=64, blank=True)
manufacturer = models.ForeignKey(Manufacturer, related_name="manufacturer")
....
Run Code Online (Sandbox Code Playgroud)
和以下索引:
class EquipmentModelIndex(indexes.SearchIndex, indexes.Indexable):
text = indexes.CharField(document=True, use_template=True)
name = indexes.CharField(model_attr="name")
manufacturer = indexes.CharField()
def get_model(self):
return EquipmentModel
def index_queryset(self, using=None):
return self.get_model().objects.all()
Run Code Online (Sandbox Code Playgroud)
那是我的equipmentmodel_text.txt
{{object.name}} {{object.manufacturer}}
但是,每当我执行此查询时:
results = SearchQuerySet().models(EquipmentModel).filter(name__startswith=request.GET['q'])[:5]
Run Code Online (Sandbox Code Playgroud)
我只得到制造商的PK.我想要整个对象(或至少它的名字).那可能吗?!
谢谢!
我正在使用 AWS Amplify 构建一个 VueJS 应用程序,我在管理 UI 中构建后端,这非常简单。
我通过命令行在我的应用程序中添加了身份验证,但我正在通过 AdminUI 构建所有模型。昨天它工作得很好,我正在做 amplify pull --appId XXXX --envName staging 并且它正在拉我的最新模型等等......但今天早上,我得到:
? 获取后端环境的更新:从云端暂存。无法刷新令牌:缺少必需的参数身份验证参数。无法获取凭据:缺少必需的参数身份验证参数。
每当我执行拉。
amazon-web-services aws-cloudformation amazon-cognito aws-amplify
afnetworking ×4
django ×4
python ×2
restkit ×2
amazon ×1
amazon-s3 ×1
aws-amplify ×1
css ×1
django-forms ×1
django-orm ×1
ios ×1
ios6 ×1
javascript ×1
jquery ×1
json ×1
objective-c ×1
restkit-0.20 ×1