Не удалось преобразовать значение типа «java.lang.String» в требуемый тип «java.lang.Long»; [Дубликат]

df = pd.DataFrame({'Year': ['2014', '2015'], 'quarter': ['q1', 'q2']})
df['period'] = df[['Year', 'quarter']].apply(lambda x: ''.join(x), axis=1)

Устанавливает этот фрейм данных

   Year quarter  period
0  2014      q1  2014q1
1  2015      q2  2015q2

Этот метод обобщает на произвольное количество столбцов строки, заменив df[['Year', 'quarter']] на любой фрагмент столбца вашего фрейма данных, например. df.iloc[:,0:2].apply(lambda x: ''.join(x), axis=1).

Вы можете проверить дополнительную информацию о методе apply () здесь

41
задан Chris 18 February 2013 в 16:14
поделиться

4 ответа

Если вы не хотите использовать конкатенацию строк (, предложенную Sotirios ), вы можете использовать предварительную обработку выражения в ссылке URL :

<form th:action="@{/mycontroller/__${type}__}">
27
ответ дан Community 26 August 2018 в 16:57
поделиться
Exception evaluating SpringEL expression: "businessId" (login:50)

У меня такая же проблема и решайте с помощью конкатенации строк, как показано ниже.

LoginController.java

@RequestMapping(value = "/login/{businessId}", method = RequestMethod.GET)
    public ModelAndView get(HttpServletRequest request, @PathVariable String businessId) {
        ModelAndView modelAndView = new ModelAndView("login");
        modelAndView.addObject("businessId", businessId);
        return modelAndView;
    }

login .html

            <form role="form" th:action="@{/login} + '/'+ ${businessId}" th:method="post">
                            <fieldset>
                                <div class="form-group">
                                    <input class="form-control" placeholder="E-mail" name="userName"
                                        type="email"></input>
                                </div>
                                <div class="form-group">
                                    <input class="form-control" placeholder="Password"
                                        name="password" type="password" value=""></input>
                                </div>
                                <div class="checkbox">
                                    <label> <input name="remember" type="checkbox"
                                        value="Remember Me"></input>Remember Me
                                    </label>
                                </div>
                                <!-- Change this to a button or input when using this as a form -->
                                <button id="login" class="btn btn-lg btn-success btn-block" type="submit">Login</button>
                            </fieldset>
            </form>
0
ответ дан erhun 26 August 2018 в 16:57
поделиться

Вам нужна строка конкатенации внутри @ {}.

<form th:action="@{'/mycontroller/' + ${type}}">

@ {} используется для перезаписи URL. Часть перезаписи URL-адресов отслеживает сеанс. Первый URL-адрес пользовательского запроса, сервер приложений добавляет URL ;jsessionid=somehexvalue и генерирует cookie с jsessionid. Когда клиент отправляет cookie во время следующего сервера запросов, клиент поддерживает файлы cookie. Если сервер знает, что поддерживает куки-файлы поддержки клиента, сервер не будет содержать addind jsessionid в URL.

Мой предпочтительный путь - это буквальная подстановка синтаксисом конвейера (|).

<form th:action="@{|/mycontroller/${type}|}">

Thymeleaf path переменный синтаксис -

<form th:action="@{/mycontroller/{pathParam}(pathParam=${type}}">

Ссылка: Синтаксис стандартного URL тимелеафа

11
ответ дан user482745 26 August 2018 в 16:57
поделиться

Что вам нужно:

<a th:href="@{/mycontroller/{type}(type=${type})}">

Документация:

Большая помощь здесь: http://www.thymeleaf.org/doc/articles/ standardurlsyntax.html . То, что я использовал оттуда, было:

Вы также можете включить параметры в виде переменных пути, аналогично обычным параметрам, но указав местозаполнитель внутри пути вашего URL:

<a th:href="@{/order/{id}/details(id=3,action='show_all')}">

... Более того: выражение URL:

<a th:href="@{/order/details(id=${order.id})}">

0
ответ дан Witold Kaczurba 26 August 2018 в 16:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: