小编dow*_*123的帖子

scrapy-处理多种类型的项目-多个和相关的Django模型,并将它们保存到管道中的数据库中

我有以下Django模型。我不确定使用scrapy管道在Spider中扫描到Django中的数据库时,保存这些相互关联的对象的最佳方法是什么。似乎刮擦的管道仅用于处理一种“种类”的物料

models.py

class Parent(models.Model):
    field1 = CharField()


class ParentX(models.Model):
    field2 = CharField()
    parent = models.OneToOneField(Parent, related_name = 'extra_properties')


class Child(models.Model):
    field3 = CharField()
    parent = models.ForeignKey(Parent, related_name='childs')
Run Code Online (Sandbox Code Playgroud)

items.py

# uses DjangoItem https://github.com/scrapy-plugins/scrapy-djangoitem

class ParentItem(DjangoItem):
    django_model = Parent

class ParentXItem(DjangoItem):
    django_model = ParentX

class ChildItem(DjangoItem):
    django_model = Child
Run Code Online (Sandbox Code Playgroud)

蜘蛛

class MySpider(scrapy.Spider):
    name = "myspider"
    allowed_domains = ["abc.com"]
    start_urls = [
        "http://www.example.com",       # this page has ids of several Parent objects whose full details are in their individual pages

    ]

    def parse(self, …
Run Code Online (Sandbox Code Playgroud)

python django scrapy scrapy-spider scrapy-pipeline

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

使用parceler(@Parcel)和Realm.io(Android)

我有以下代码产生错误: Error:Parceler: Unable to find read/write generator for type io.realm.Realm for io.realm.RealmObject.realm

它没有工作extends RealmObject,但是我想使用Realm轻松地放入数据库.有没有办法驱逐RealmObject字段,只使用@Parcel的基本pojo字段?

@Parcel
public class Feed extends RealmObject{
    int id;
    public String text;
    public String time_created;
    String time_modified;
    int comments_count;
    int likes_count;
    String feed_type;
    int obj_id;
    String image;
    String user_name;
    String user_earthmile_points;
    boolean liked;
    boolean commented;
    boolean is_private;
    String url;
    int feed_creator_id;

   }
Run Code Online (Sandbox Code Playgroud)

android serializable realm parcelable parceler

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

无法为Facebook App Center配置Facebook应用程序 - 应用程序详细信息页面

我有一个使用iOS SDK的iOS应用程序,并已获得Facebook批准的基本信息+出生日期+位置城市

我想在App Center上列出它并尝试使用以下权限提交另一个应用程序:

应用程序详细信息当您希望应用程序在App Center中列出时,您只需提交应用程序详细信息.一旦您填写应用详细信息并公开您的应用,您的应用就可以在Facebook上自动搜索.

但是,我收到一个错误,即应用程序详细信息未完成,但在检查该页面时,它确实对我来说完整(附图像)

关于什么仍然缺失以及如何完成它的任何想法?非常感谢

在此输入图像描述

我可以确认所有非可选图片字段已填写,如果附加的图像不明显

另外要确认,App Center Listed Platforms无法配置为两个按钮都处于非活动状态

在此输入图像描述

facebook ios facebook-apps facebook-app-center

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

DRF - 带有非模型 write_only 字段的 ModelSerializer

我有以下模型、序列化程序和视图。我的目标是传递一个自定义字符串,如

referrer = "pid=email&af_sub1=ui_1120&c=xyz"
Run Code Online (Sandbox Code Playgroud)

在POST方法中(下面RegisterViewSet)然后到viewset/serializer使用这个信息填写referral_campaign、referral_media和inviting_user

所以:1.referrer 是 write_only 字段 2.referrer 不是模型中的字段,但信息将用于填充模型中的字段

如何以 DRF 方式实现这一点?

模型

class User(AbstractUser):     
    first_name = models.CharField(max_length=100, null=True, blank=True)
    last_name = models.CharField(max_length=100, null=True, blank=True)

    # social/viral feature related fields
    referral_campaign = models.CharField(default="", max_length = 200, help_text="Campaign that led to the user signup")
    referral_media_source = models.CharField(default="", max_length = 200, help_text="Campaign that led to the user signup")
    inviting_user = models.ForeignKey('self', help_text="Inviting user", null=True, blank=True)
Run Code Online (Sandbox Code Playgroud)

序列化器

class UserSerializer(serializers.ModelSerializer):

class Meta:
    model = User
    fields = ('first_name', 'last_name',)
    write_only_fields = ('first_name', …
Run Code Online (Sandbox Code Playgroud)

python django django-serializer django-rest-framework

3
推荐指数
2
解决办法
5027
查看次数

Internet Explorer的Redux-Saga

我在IE 11中有一个使用redux-saga的React应用

它似乎因以下错误而中断

请注意,此应用程序在最近3年的Chrome版本中以及在Safari中都可以完美运行(除了某些显示问题)

sagas.js

// functions are called bottom to top, this one is called at the end (also can be seen in stack trace below)

function* getGlobalData() {
    console.log('Get global data called');      // this is executed

    // something is failing from here on

    const [
      wardrobeResponse,
      lastListingsResponse,
    ]  = yield [
      call(api_request, {url: 'store/wardrobes/'}),
      call(api_request, {url: 'store/last_listings/'}),
    ]


    yield put(actions.wardrobe.success(wardrobeResponse.json));
    yield put(actions.lastListings.success(lastListingsResponse.json));



}

/**
 * Watches for LOAD_SEARCH_RESULTS action and calls handler
 */
function* getGlobalDataWatcher() {

    console.log('Get data …
Run Code Online (Sandbox Code Playgroud)

reactjs redux redux-saga react-redux react-boilerplate

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

结构变量的移动是“移动”,但分配了内存中的新空间并且基础值的地址不同

我试图在包含具有实现该Copy特征的类型的字段的结构的情况下理解 Rust 的移动语义。考虑以下结构:

\n
struct Book {\n    author: &\'static str,\n    title: &\'static str,\n    year: u32,\n}\n\nfn main() {\n    let bookA = Book {\n        author: "Douglas Hofstadter",\n        title: "G\xc3\xb6del, Escher, Bach",\n        year: 1979,\n    };\n    \n    let addr_bookA: *const Book = &bookA;\n    let bookB = bookA; // Move occurs here\n    \n    // Getting the memory addresses as raw pointers\n    \n    let addr_bookB: *const Book = &bookB;\n    \n    println!("Address of bookA: {:p}", addr_bookA);\n    println!("Address of bookB: {:p}", addr_bookB);\n}\n
Run Code Online (Sandbox Code Playgroud)\n

输出:

\n
Address …
Run Code Online (Sandbox Code Playgroud)

rust borrow-checker

3
推荐指数
2
解决办法
131
查看次数

将herokuapp迁移到EU并保持相同的名称

我有一个已经提交到应用程序商店的iOS应用程序,出于商业原因,我们很快就不想要另一个版本.这个iOS应用程序指的是服务器myapp.herokuapp.com

iOS应用程序的所有用户都将在英国,因此我有必要移动myappHeroku US(以及其静态存储在美国的AWS S3存储桶)移动到Heroku EU区域(并获取)欧盟相应的AWS S3存储桶)

我做了以下事情:

$ heroku fork -a myapp myappeu --region eu
Run Code Online (Sandbox Code Playgroud)

但是,这意味着应该更改我的iOS代码以引用服务器myappeu.herokuapp.com,这在iOS应用程序的第2版之前无法完成

有没有其他方法可以做到这一点,比如删除myapp和重命名myappeumyapp

django heroku

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

v7-21 ActionBarActivity未显示左侧的应用程序主图标

我实施了一项基本活动

public class MainActivity extends Activity
Run Code Online (Sandbox Code Playgroud)

当我使用如下菜单添加操作栏时,AndroidManifest.xml中定义的应用程序图标显示得很好

<application
android:allowBackup="true"
android:icon="@drawable/logo_green"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:theme="@style/Theme.AppCompat.Light.DarkActionBar" >
Run Code Online (Sandbox Code Playgroud)

当我尝试更改为android.support.v7.app.ActionBarActivity(并切换到兼容的AppCompat主题,如@ style/Theme.AppCompat.Light.DarkActionBar)时,操作栏中的主应用程序菜单奇怪地消失了

我尝试将它恢复到Oncreate()方法中的位置,但它不起作用

actionBar = getSupportActionBar();
actionBar.setHomeButtonEnabled(true);
actionBar.setIcon(R.drawable.green_drawable);
Run Code Online (Sandbox Code Playgroud)

动作栏xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <!-- Search / will display always -->


    <item android:id="@+id/notification"
        android:icon="@drawable/notification_active"
        android:title="Setup"
        app:showAsAction="never"/>

    <item android:id="@+id/action_search"
        android:icon="@drawable/add_friends"
        android:title="Add Friends"
        app:showAsAction="never"/>


    <item android:id="@+id/action_setup"
        android:icon="@drawable/trackingicon"
        android:title="Setup"
        app:showAsAction="never"/>

    <item android:id="@+id/action_settings"
        android:title="@string/action_settings"
        app:showAsAction="never" />

    <item android:id="@+id/action_help"
        android:icon="@drawable/helpicon"
        android:title="Contact Support"
        app:showAsAction="ifRoom"/>


</menu>
Run Code Online (Sandbox Code Playgroud)

android-activity android-actionbar android-actionbar-compat android-actionbaractivity

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

获取api - 在两者中获取json body并捕获块以获取单独的状态代码

我使用fetch api来获取可能返回的URL:

回复:状态= 200,json body = {'user':'abc','id':1}

要么

回复:状态= 400,json body = {'reason':'某些原因'}

要么

回复:状态= 400,json body = {'reason':'其他原因'}

我想创建一个单独的函数request(),我从代码的各个部分使用如下:

    request('http://api.example.com/').then(
        // status 200 comes here
        data => // do something with data.id, data.user
    ).catch(
        // status 400, 500 comes here
        error =>  // here error.reason will give me further info, i also want to know whether status was 400 or 500 etc
    )
Run Code Online (Sandbox Code Playgroud)

我无法进行200到400,500之间的分割(我试过抛出一个错误).当我抛出错误时,我发现很难仍然提取JSON主体(用于error.reason).

我目前的代码如下:

import 'whatwg-fetch';

/**
 * Requests a URL, returning a promise
 */
export …
Run Code Online (Sandbox Code Playgroud)

javascript promise es6-promise fetch-api

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