プロジェクト

全般

プロフィール

Enhancement(機能追加・改善) #4183

JavaScript から route (app_url_for, url_for) を呼び出せる機能が欲しい

Shinichi Urabe約7年前に追加. ほぼ4年前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2020-01-31
期日:
進捗率:

100%


説明

概要

JS から app_url_for, url_for などのヘルパーの結果を問い合わせる機構の作成

仕様

opUrl.app_url_for

jsDoc
  /** 
   * method app_url_for().
   *
   * @param  {strina} application ex: api ...
   * @param  {string} internalUri 'module/action' or '@rule' of the action
   * @param {boolean} absolute  return absolute path?
   * @returns {Deferred} Return a Deferred's Promise object. opUrl.url_for(... snip ...).done(function(url) {... snip ...}).fail(function(xhr, textStatus, errorThrown) {... snip ...})
   */

code example.

// no problem url.
opUrl.app_url_for(
  'api',
  '@homepage',
  false
).done(function(url) { console.log(url); });

// -> /api.php/

// invalidUrl
opUrl.app_url_for(
  'api',
  '@invalidUrl',
  false
).done(
  function(url) { console.log(url); }
).fail(
  function(xhr, textStatus, errorThrown) { console.log(xhr, textStatus, errorThrown); }
);

// -> xhr object, status, error


opUrl.url_for

for pc_frontend.

jsDoc
  /** 
   * method url_for().
   *
   * @param {string} internalUri 'module/action' or '@rule' of the action
   * @param {boolean} absolute  return absolute path?
   * @returns {Deferred} Return a Deferred's Promise object. opUrl.url_for(... snip ...).done(function(url) {... snip ...}).fail(function(xhr, textStatus, errorThrown) {... snip ...})
   */

code example.

// no problem url.
opUrl.url_for(
  '@homepage',
  true,
).done(function(url) { console.log(url); });

// -> http://example.com/

// invalidUrl
opUrl.url_for(
  '@invalidUrl',
  true,
).done(
  function(url) { console.log(url); }
).fail(
  function(xhr, textStatus, errorThrown) { console.log(xhr, textStatus, errorThrown); }
);

// -> xhr object, status, error



子チケット

Backport(バックポート) #4360: JavaScript から route (app_url_for, url_for) を呼び出せる機能が欲しいWon't fix(対応せず)kaoru n

Backport(バックポート) #4361: JavaScript から route (app_url_for, url_for) を呼び出せる機能が欲しいFixed(完了)kaoru n

Backport(バックポート) #4377: JavaScript から route (app_url_for, url_for) を呼び出せる機能が欲しいFixed(完了)isao sano


関連するチケット

関連している opSkinThemePlugin - Enhancement(機能追加・改善) #4476: #4183 に対応する Fixed(完了) 2020-06-23

関係しているリビジョン

リビジョン 6d7b29aa (差分)
Shinichi Urabeほぼ7年前に追加

(refs #4183) The value "320px" for key "width" was truncated to its numeric prefix.

リビジョン cb3848ae
kaoru n6年以上前に追加

Merge pull request #477 from ShinichiU/t-4103

(refs #4183) The value "320px" for key "width" was truncated to its numeric prefix.

リビジョン fdb52770 (差分)
Shinichi Urabeほぼ4年前に追加

(refs #4183) add javascript url_for, app_url_for routing helper for api.

リビジョン 52856981 (差分)
Shinichi Urabeほぼ4年前に追加

(refs #4183) add Local Strage class.

リビジョン f6f77c53 (差分)
Shinichi Urabeほぼ4年前に追加

(refs #4183) add opUrl library class for url_for, app_url_for.

リビジョン 95f85d94 (差分)
Shinichi Urabeほぼ4年前に追加

(refs #4183) opUrl api url always callable on pc_frontend application.

リビジョン dee08edf (差分)
Shinichi Urabeほぼ4年前に追加

(refs #4183) Return a Deferred's Promise object. Not use callback function.

リビジョン 87a5e003 (差分)
Shinichi Urabeほぼ4年前に追加

(refs #4183) delete 'return $.ajax()'.

リビジョン ef99d4a8 (差分)
Shinichi Urabeほぼ4年前に追加

(refs #4183) save to Local Strage for cache.

リビジョン bf25d0c9 (差分)
Shinichi Urabeほぼ4年前に追加

(refs #4183) A result save to localStrage in call method.

リビジョン e1056776 (差分)
Shinichi Urabeほぼ4年前に追加

(refs #4183) set content-type "text/plain".

リビジョン 79dc18bc
kaoru nほぼ4年前に追加

Merge pull request #567 from nishizoe/t-4183

(refs #4183) url_for, app_url_for for javascript.

履歴

#1 Shinichi Urabeほぼ7年前に更新

  • ステータスNew(新規) から Accepted(着手) に変更
  • 担当者Shinichi Urabe にセット

#2 Shinichi Urabeほぼ7年前に更新

  • 題名JavaScript から route (app_url_for, url_for ) を呼び出せる機能が欲しい から JavaScript から route (app_url_for, url_for) を呼び出せる機能が欲しい に変更
  • 説明 を更新 (diff)
  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

#3 Shinichi Urabeほぼ7年前に更新

  • ステータスPending Review(レビュー待ち) から Rejected(差し戻し) に変更

「引数でcallback渡すよりはPromise的なオブジェクトを返した方が今どきな感じがありそう」 という意見をもらったので、折角なので、その方針で検討

#4 Shinichi Urabeほぼ7年前に更新

  • 説明 を更新 (diff)
  • ステータスRejected(差し戻し) から Pending Review(レビュー待ち) に変更

追加修正で callback を引数に追加させるのをやめ、 Deferred.Promise オブジェクトを返すようにした
PR: https://github.com/openpne/OpenPNE3/pull/471

#5 kaoru n約4年前に更新

  • 対象バージョンOpenPNE 3.9.0 から OpenPNE 3.10.x に変更

#6 kaoru n約4年前に更新

  • 担当者Shinichi Urabe から kaoru n に変更

https://github.com/openpne/OpenPNE3/pull/567
にてプルリクエストしました

https://github.com/openpne/OpenPNE3/pull/471
はコンフリクトしていたため close します

#7 Rimpei Ogawaほぼ4年前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

#8 isao sanoほぼ4年前に更新

  • ステータスPending Testing(テスト待ち) から Pending Merge(マージ待ち) に変更
  • 進捗率70 から 80 に変更

試験完了しました。
問題ありません。

#9 kaoru nほぼ4年前に更新

  • ステータスPending Merge(マージ待ち) から Fixed(完了) に変更
  • 進捗率80 から 100 に変更

マージしました

#10 kaoru nほぼ4年前に更新

他の形式にエクスポート: Atom PDF