2

完全な Noob to curl、REST API、および redmine は非常に単純なことに引っかかっていますが、長い間フォーラムをトロールしても答えが見つかりません...

複数の問題を Redmine にバッチ インポートしようとしましたが、成功しませんでした。

現在、curl を使用して REST API を試しています。問題を個別に投稿できますが、同時に多くの問題を投稿する方法がわかりません。これは、多くのものを redmine にインポートする人々が直面する一般的な問題だと思います...

これは私が使用しているcurlコマンドです:

curl -v -H "Content-Type: application/json" -X POST --data "@test2.json" \
  -u user:password localhost/redmine/issues.json

これは test2.json ファイルです。

{
    "issue": {
    "project_id": 9,
    "subject": "TEST5",
    "notes": "foobar",
    "priority_id": 2
    },

    "issue": {
    "project_id": 9,
    "subject": "TEST6",
    "notes": "barfoo",
    "priority_id": 3
    }    
}

現在、2番目の問題のみを取り上げています...誰かが私が間違っていることやより良い代替案を提案できますか?

環境

Windows 7 の Bitnami Redmine スタック

Redmine version                          2.3.0.stable
Ruby version                             1.9.3 (i386-mingw32)
Rails version                            3.2.13
Environment                              production
Database adapter                         Mysql2
4

3 に答える 3

3

requestsという python モジュールを使用してみてください。Redmine から情報を POST および GET できるように、URL を開くのに役立ちます。これは、ローカルの Redmine サーバーにデータをプッシュするために使用したものです。

たとえば、次の形式でユーザーを Redmine に POST できます。

username = 'admin'
password = 'admin'
url = 'http://localhost:3000/users.json'

payload = {
        'user': {
            'login': login,
            'password': password,
            'firstname': firstname,
            'lastname': lastname,
            'mail': mail
        }
    }

parameters_json = json.dumps(payload)
headers = {'Content-Type': 'application/json'}
r = requests.post(url, auth=(username, password), data=parameters_json, headers=headers)

ユーザーの代わりに、localhost:3000/issues.json 経由で問題に POST します。

Redmine のRESTful API ガイドに従って、正しいパラメーターを入力してください。

于 2013-05-08T20:04:27.540 に答える
0

ここで、外部データをインポートするための最も簡単なソリューションを見つけました。

http://www.redmine.org/boards/1/topics/37725?r=38232

これにより、私にとって完璧に機能するcsvから直接インポートできます!

于 2013-06-10T22:17:20.843 に答える
0

そこにコメントを投稿しましたが、作曲家を知らない人のために、インストールを文書化する必要があります。これは CSV インポーターです。PHP を知っていれば、パーサー クラス ファミリーにさらに入力形式を追加できます。 https://github.com/juanmf/RedmineIssueImporter

基本的には、yml で csv フィールドから課題フィールドへのマッピングを定義し、スクリプトを実行します。

于 2013-10-02T15:41:37.870 に答える