小编Pur*_*ret的帖子

如何避免django"与相关的m2m字段冲突"错误?

我有很多具有投票功能的模型,所以我创建了一个这样的结构:

class Voteable(models.Model):
    likes_balance = models.IntegerField(default=0, editable=False)
    votes = models.ManyToManyField(User, blank=True, editable=False)
    likes = models.ManyToManyField(User, blank=True, editable=False)

    class Meta:
        abstract = True

class Item(Voteable):
    title = models.CharField(max_length=20, db_index=True)
    description = models.TextField(max_length=1000)
    contact_user = models.ForeignKey(User, null=True, blank=True)

    class Meta:
        abstract = True

class Movie(Item):
    cover = models.ImageField(upload_to='images/covers/')

class Car(Item):
    seller = models.CharField(max_length=50)
Run Code Online (Sandbox Code Playgroud)

当我尝试使用"python manage.py syncdb"创建表时,我收到错误消息:

m2m字段的访问者'喜欢'与相关字段'User.movi​​e_set'的冲突.将related_name参数添加到"likes"的定义中.

因为我在Item类中有更多的字段,所以不想将它们全部复制到所有子类,只是设置像错误建议的related_name.

有什么建议怎么处理吗?

python django django-models

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

JXL尝试在设置背景颜色时修改引用的格式

在尝试执行以下代码时:

Colour selectedColour = Colour.WHITE;
myWritableCellFormat.setBackground(selectedColour);
Run Code Online (Sandbox Code Playgroud)

我得到了这个例外:

jxl.write.biff.JxlWriteException: Attempt to modify a referenced format
Run Code Online (Sandbox Code Playgroud)

为什么是这样?作为参考,我在这两行之前使用了相同的对象来编写具有另一种颜色的单元格.这有什么重要意义吗?

java exception jxl

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

在java中使用regex时转义'{'?

我试图让我的代码忽略它正在阅读的一些行.我的SSCE因此是:

public class testRegex {
    private static final String DELETE_REGEX = "\\{\"delete"; //escape the '{', escape the ' " '
    private static final String JSON_FILE_NAME = "example";
public static void main(String[] args){
    String line = null;
    try{
        BufferedReader buff = new BufferedReader (new FileReader(JSON_FILE_NAME + ".json"));
        line = buff.readLine        buff.close();
        }catch (FileNotFoundException e){e.printStackTrace();}
         catch (IOException e){e.printStackTrace();}
    String line=buff.readLine();
    System.out.println(line.contains(DELETE_REGEX));
    }
}
Run Code Online (Sandbox Code Playgroud)

我的文件只包含以下行:

{"delete":{"status":{"user_id_str":"123456789","user_id":123456789,"id_str":"987654321","id":987654321}}}

但是这打印出错......我的正则表达式错了吗?我{通过双重逃避匹配,\\{因为它建议在这里.

字符串文字"\(hello\)"是非法的,并导致编译时错误; 为了匹配字符串(hello),"\\(hello\\)"必须使用字符串文字.

我逃避了"使用\" …

java regex bufferedreader

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

从数字转换为hexavigesimal字母?

我正在尝试使用JExcel重新排序一些Excel列.我还需要找到对其他单元格的引用,然后重新映射它们以引用正确的单元格.我觉得我已经完成了很多艰苦的工作,但我遇到了绊脚石.

我在维基百科上找到了这个代码,与SO链接:

 public static String toBase26(int number){
        number = Math.abs(number);
        String converted = "";
        // Repeatedly divide the number by 26 and convert the
        // remainder into the appropriate letter.
        do
        {
            int remainder = number % 26;
            converted = (char)(remainder + 'A') + converted;
            number = (number - remainder) / 26;
        } while (number > 0);

        return converted;
    }
Run Code Online (Sandbox Code Playgroud)

但当我将数字35输入其中时,会发生以下情况:

  1. number = 35
  2. remainder = 9
  3. converted= char(9 +'A')+""= J.
  4. number =(35-9)/ 26 = 1
  5. 1> …

java

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

未配置服务器实例.找不到类:VersionLoggerListener

我正在尝试在Eclipse Luna中设置tomcat 7.0.57来运行Web应用程序.我已将webapp添加到服务器,并尝试发布该服务但我收到此错误:

Dec 05, 2014 10:07:13 AM org.apache.tomcat.util.digester.Digester startElement
SEVERE: Begin event threw exception
java.lang.ClassNotFoundException: org.apache.catalina.startup.VersionLoggerListener
    at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at org.apache.tomcat.util.digester.ObjectCreateRule.begin(ObjectCreateRule.java:144)
    at org.apache.tomcat.util.digester.Digester.startElement(Digester.java:1276)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:509)
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:182)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1343)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2786)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649)
    at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1537)
    at org.apache.catalina.startup.Catalina.load(Catalina.java:617)
    at org.apache.catalina.startup.Catalina.load(Catalina.java:665)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:483)
    at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:281)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:455)

Dec 05, 2014 10:07:13 AM …
Run Code Online (Sandbox Code Playgroud)

eclipse tomcat

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

我在angularjs应用程序上遇到的错误很少,我不确定它为什么会出现?

嗨我在角色应用程序上工作后,我收到一个错误,我不知道为什么它会来.

error : TypeError: a is not a function
at angular.min.js:70
at m.promise.then.u (angular.min.js:97)
at m.promise.then.u (angular.min.js:97)
at angular.min.js:98
at h.$get.h.$eval (angular.min.js:108)
at h.$get.h.$digest (angular.min.js:106)
at h.$get.h.$apply (angular.min.js:109)
at f (angular.min.js:71)
at F (angular.min.js:75)
at XMLHttpRequest.x.onreadystatechange (angular.min.js:76)(anonymous function) @ angular.min.js:89$get @ angular.min.js:66m.promise.then.u @ angular.min.js:97m.promise.then.u @ angular.min.js:97(anonymous function) @ angular.min.js:98$get.h.$eval @ angular.min.js:108$get.h.$digest @ angular.min.js:106$get.h.$apply @ angular.min.js:109f @ angular.min.js:71F @ angular.min.js:75x.onreadystatechange @ angular.min.js:76XMLHttpRequest.send (async)b @ angular.min.js:77z @ angular.min.js:72$get.f @ angular.min.js:70m.promise.then.u @ angular.min.js:97m.promise.then.u @ angular.min.js:97(anonymous function) @ angular.min.js:98$get.h.$eval @ angular.min.js:108$get.h.$digest @ angular.min.js:106$get.h.$apply @ …
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-directive angularjs-scope

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

如果只有一个线程在运行(main)并且调用了sleep(1000),那么线程是否会睡眠1秒或至少1秒?

在以下代码中:

 class Test {
      public static void main(String [] args) {
           printAll(args);
      }
      public static void printAll(String[] lines) {
           for(int i=0;i<lines.length;i++){
                System.out.println(lines[i]);
                Thread.currentThread().sleep(1000);
           }
      }
 }
Run Code Online (Sandbox Code Playgroud)

将数组行中的每个String输出:

  1. 恰好线之间暂停1秒?
  2. 至少线之间暂停1秒?

java multithreading thread-sleep

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

显示一些菜单项的子菜单,以通过 ReactJs 中的路由加载内容

我正在学习 React JavaScript 库。我想创建一个具有以下布局的简单网络应用程序:菜单+子菜单+内容。我使用react 15.0.2、react-router 2.4.0、babel 6.5.2和webpack 1.13.0。

我能够创建菜单+内容布局,但我不知道添加子菜单部分的最佳实践是什么。

我的应用程序如下所示:

Home ~ About ~ Contact ~ Profile

content...
Run Code Online (Sandbox Code Playgroud)

我想在“配置文件”菜单项下添加一个子菜单,但前 3 个菜单项没有子菜单。因此,如果我单击“关于和联系”链接,那么我想在主菜单栏下看到正确的内容。如果我单击“个人资料”链接,则需要显示一个子菜单。单击菜单+子菜单对下需要显示内容的子菜单项:

Home ~ About ~ Contact ~ Profile

Profile-Submenu 1 ~ Profile-Submenu 2 ~ ...

content...
Run Code Online (Sandbox Code Playgroud)

应用程序.js

ReactDom.render(
    <Router>
        <Route component={MainLayout}>
            <Route path="/" component={Home} />
            <Route path="home" component={Home} />
            <Route path="about" component={About} />
            <Route path="contact" component={Contact} />
            <Route path="profile" component={Profile} />
        </Route>
    </Router>,  
    document.getElementById('root')
);
Run Code Online (Sandbox Code Playgroud)

MainLajout.js

export default class MainLayout extends React.Component {
    render() {
        return (
            <div>
                <MainMenu /> …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-router

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

请求-html 包无法为 fast.com 正确呈现

我正在使用 python 3.7 开发一个网络抓取应用程序。我正在使用 requests-html 来解析数据。到目前为止,我已经尝试了以下尝试使用渲染功能的代码(因为 fast.com 上的速度数据是通过 javascript 加载的)。

from requests_html import HTMLSession
quote_page = 'https://fast.com'
session = HTMLSession()
r = session.get(quote_page)
r.html.render()
extract_value = r.html.find('#speed-value', first=True)
print(extract_value.text)
Run Code Online (Sandbox Code Playgroud)

speed-value 是包含速度数据的 div 使用的 id 属性。

但它仍然将速度值打印为 0。

python-3.x python-requests-html

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

我可以将beautifulsoup中的两个'findAll'搜索块合并为一个吗?

我可以将这两个块组合成一个:

编辑:除了Yacoby在回答中组合循环之外的任何其他方法.

for tag in soup.findAll(['script', 'form']):
    tag.extract()

for tag in soup.findAll(id="footer"):
    tag.extract()
Run Code Online (Sandbox Code Playgroud)

我也可以将多个块组合成一个:

for tag in soup.findAll(id="footer"):
    tag.extract()

for tag in soup.findAll(id="content"):
    tag.extract()

for tag in soup.findAll(id="links"):
    tag.extract()
Run Code Online (Sandbox Code Playgroud)

或者可能有一些lambda表达式,我可以检查是否在数组或任何其他更简单的方法.

另外我如何找到属性类的标签,因为class是保留关键字:

编辑:这部分是由汤.findAll(attrs = {'class':'noprint'})解决的:

for tag in soup.findAll(class="noprint"):
    tag.extract()
Run Code Online (Sandbox Code Playgroud)

python beautifulsoup

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